"|" मेटा कैरेक्टर: मेटा कैरेक्टर "|" जावा में रेगुलर एक्सप्रेशन आपको एक से अधिक रेगुलर एक्सप्रेशन से मिलान करने की अनुमति देता है उदाहरण के लिए यदि आपको एक विशेष इनपुट टेक्स्ट को एक से अधिक एक्सप्रेशन से मिलान करने की आवश्यकता है तो आपको इसका उपयोग करके उन्हें अलग करने की आवश्यकता है:
exp1|exp2|exp3
उदाहरण
आयात करें ।में); System.out.println ("अपना इनपुट दर्ज करें:"); स्ट्रिंग इनपुट =sc.nextLine (); // नियमित अभिव्यक्ति स्ट्रिंग रेगेक्स ="\\d{10}|^[aeiou]"; // एक पैटर्न ऑब्जेक्ट बनाना पैटर्न पैटर्न =Pattern.compile(regex); // एक मैचर ऑब्जेक्ट बनाना मैचर मैचर =पैटर्न। मैचर (इनपुट); if(matcher.find ()) { System.out.println (इनपुट + "वैध है"); }else { System.out.println (इनपुट + "मान्य नहीं है"); } }}आउटपुट 1
अपना इनपुट दर्ज करें:98480332289848033228 मान्य है
आउटपुट 2
अपना इनपुट दर्ज करें:एक सेब एक दिन डॉक्टर को दूर रखता है और एक सेब एक दिन डॉक्टर को दूर रखता है मान्य है
सूची वस्तु का उपयोग करना
एक और समाधान यह है कि आप अलग-अलग पैटर्न ऑब्जेक्ट्स का उपयोग करके सभी नियमित अभिव्यक्तियों को संकलित करते हैं और उन्हें एक सूची ऑब्जेक्ट में जोड़ते हैं और इनपुट टेक्स्ट पर मिलान को -
के रूप में ढूंढते हैं।सूची सूची =नई ArrayList<>();list.add(Pattern.compile(regex1));list.add(Pattern.compile(regex2)); के लिए (पैटर्न पैटर्न:सूची) { Matcher matcher =pattern. मैचर (इनपुट); अगर (मैचर.फाइंड ()) {। . . . . . . . . . . . . . . }वरना { । . . . . . . . . . . . . . . }}
उदाहरण
आयात करें (स्ट्रिंग [] args) {स्कैनर sc =नया स्कैनर (System.in); System.out.println ("अपना इनपुट दर्ज करें:"); स्ट्रिंग इनपुट =sc.nextLine (); // नियमित अभिव्यक्ति स्ट्रिंग regex1 ="\\d{10}"; स्ट्रिंग रेगेक्स2 ="^ [एईओयू]"; // एक पैटर्न ऑब्जेक्ट बनाना पैटर्न Pattern1 =Pattern.compile(regex1); पैटर्न पैटर्न 2 =पैटर्न। संकलन (रेगेक्स 2); // एक सूची वस्तु सूची बनाना <पैटर्न> पैटर्न =नया ArrayList<>(); पैटर्न। जोड़ें (पैटर्न 1); पैटर्न। जोड़ें (पैटर्न 2); के लिए (पैटर्न पैटर्न:पैटर्न) {मैचर मैचर =पैटर्न। मैचर (इनपुट); if(matcher.find ()) { System.out.println ("रेगेक्स के लिए "+pattern.pattern ()+" "+ इनपुट +" मान्य है"); } और { System.out.println ("रेगेक्स के लिए "+pattern.pattern ()+" "+ इनपुट +" मान्य नहीं है"); } } }}आउटपुट 1
अपना इनपुट दर्ज करें:9848033228 रेगेक्स के लिए \d{10} 9848033228 मान्य है रेगेक्स के लिए ^[aeiou] 9848033228 मान्य नहीं है
आउटपुट 2
अपना इनपुट दर्ज करें:एक सेब एक दिन डॉक्टर को दूर रखता हैरेगेक्स के लिए \d{10} एक सेब एक दिन डॉक्टर को दूर रखता है मान्य नहीं है रेगेक्स के लिए ^[aeiou] एक सेब एक दिन डॉक्टर को दूर रखता है मान्य है