दिनांक-MM-yyyy प्रारूप में दिनांक से मिलान करने के लिए निम्नलिखित रेगुलर एक्सप्रेशन है।
^(1[0-2]|0[1-9])/(3[01]|[12][0-9]|0[1-9])/[0-9]{4 }$
उस प्रारूप में एक स्ट्रिंग में दिनांक का मिलान करने के लिए।
-
पैटर्न वर्ग के संकलन () विधि की उपरोक्त अभिव्यक्ति को संकलित करें।
-
पैटर्न वर्ग के matcher() विधि के पैरामीटर के रूप में आवश्यक इनपुट स्ट्रिंग को दरकिनार करते हुए Matcher ऑब्जेक्ट प्राप्त करें।
-
मैचर क्लास की मैच () विधि सही हो जाती है यदि कोई मैच होता है तो यह गलत हो जाता है। इसलिए, डेटा को मान्य करने के लिए इस पद्धति को लागू करें।
उदाहरण 1
आयात करें स्ट्रिंग रेगेक्स ="^(1[0-2]|0[1-9])/(3[01]|[12][0-9]|0[1-9])/[0-9]{ 4}$"; // एक पैटर्न ऑब्जेक्ट बनाना पैटर्न पैटर्न =Pattern.compile(regex); // स्ट्रिंग मैचर मैचर =पैटर्न। मैचर (दिनांक) में संकलित पैटर्न का मिलान करना; बूलियन बूल =matcher.matches (); अगर (बूल) {System.out.println ("तिथि मान्य है"); } और { System.out.println ("तिथि मान्य नहीं है"); } }}आउटपुट
तारीख मान्य है
स्ट्रिंग क्लास की माचिस () विधि एक नियमित अभिव्यक्ति को स्वीकार करती है और इसके साथ वर्तमान स्ट्रिंग से मेल खाती है और मैच के मामले में सही होती है और अन्यथा गलत होती है। इसलिए, यह सत्यापित करने के लिए कि दी गई तिथि (स्ट्रिंग प्रारूप में) आवश्यक प्रारूप में है -
- तारीख स्ट्रिंग प्राप्त करें।
- उपरोक्त रेगुलर एक्सप्रेशन को एक पैरामीटर के रूप में पास करके उस पर माचिस () विधि का आह्वान करें।
उदाहरण 2
आयात java.util.Scanner; सार्वजनिक वर्ग बस {सार्वजनिक स्थैतिक शून्य मुख्य (स्ट्रिंग [] तर्क) {स्कैनर एससी =नया स्कैनर (System.in); System.out.println ("अपना नाम दर्ज करें:"); स्ट्रिंग नाम =sc.nextLine (); System.out.println ("अपनी जन्मतिथि दर्ज करें:"); स्ट्रिंग dob =sc.nextLine (); // MM-DD-YYY प्रारूप में दिनांक स्वीकार करने के लिए नियमित अभिव्यक्ति स्ट्रिंग रेगेक्स ="^(1[0-2]|0[1-9])/(3[01]|[12][0-9]| 0[1-9])/[0-9]{4}$"; बूलियन परिणाम =dob.matches (रेगेक्स); if(result) { System.out.println ("दिया गया जन्म तिथि मान्य है"); } और { System.out.println ("दी गई जन्मतिथि मान्य नहीं है"); } }}
आउटपुट 1
अपना नाम दर्ज करें:जानकीअपनी जन्मतिथि दर्ज करें:26/09/1989दी गई जन्मतिथि मान्य नहीं है
आउटपुट 2
अपना नाम दर्ज करें:जानकीअपनी जन्मतिथि दर्ज करें:09/26/1989दिए गए जन्म की तारीख मान्य है