Computer >> कंप्यूटर >  >> प्रोग्रामिंग >> Java

अनिच्छुक क्वांटिफायर जावा रेगुलर एक्सप्रेशन

लालची क्वांटिफ़ायर डिफ़ॉल्ट क्वांटिफ़ायर हैं। एक लालची क्वांटिफायर इनपुट स्ट्रिंग से जितना संभव हो उतना मेल खाता है (सबसे लंबा मैच संभव है) यदि मैच नहीं हुआ तो यह अंतिम चरित्र को छोड़ देता है और फिर से मेल खाता है।

जबकि एक अनिच्छुक या, गैर-लालची क्वांटिफायर जितना संभव हो उतना कम मेल खाता है, शुरू में गैर-लालची क्वांटिफायर पहले वर्ण से मेल खाता है यदि मैच नहीं हुआ तो यह इनपुट स्ट्रिंग से एक और चरित्र जोड़ता है और मिलान करने का प्रयास करता है।

यदि आप एक "?" लालची क्वांटिफायर के बाद यह अनिच्छुक या गैर लालची क्वांटिफायर बन जाता है। अनिच्छुक परिमाणकों की सूची निम्नलिखित है -

<टेबल> <थेड> क्वांटिफायर <थ>विवरण पुनः*? शून्य या अधिक बारंबारता से मेल खाता है।
फिर से?? शून्य या, 1 बारंबारता से मेल खाता है।
फिर से+? एक या अधिक घटनाओं से मेल खाता है।
फिर से{n}? बिल्कुल n आवृत्तियों से मेल खाता है।
पुनः{n, }? कम से कम n आवृत्तियों से मेल खाता है।
पुनः{n, m}? कम से कम n और अधिकतम m आवृत्तियों से मेल खाता है।

उदाहरण

आयात करें ।में); System.out.println ("इनपुट टेक्स्ट दर्ज करें:"); स्ट्रिंग इनपुट =sc.nextLine (); स्ट्रिंग रेगेक्स ="[0-9]+?"; // एक पैटर्न ऑब्जेक्ट बनाना पैटर्न पैटर्न =Pattern.compile(regex); // स्ट्रिंग मैचर मैचर =पैटर्न.मैचर (इनपुट) में संकलित पैटर्न का मिलान करना; जबकि (matcher.find ()) {System.out.print("पैटर्न" + matcher.start()+ " से "+ (matcher.end()-1)+"::"); System.out.print(matcher.group ()); System.out.println (); } }}

आउटपुट

इनपुट टेक्स्ट दर्ज करें:123456780 से 0 तक मिला पैटर्न ::11 से 1::2 तक पैटर्न मिला 2 से 2::3 तक पैटर्न 3 से 3::4 तक पाया गया पैटर्न 4 से 4::5 तक पाया गया पैटर्न से मिला 5 से 5::66 से 6::7 तक मिला पैटर्न 7 से 7::8 तक पाया गया 

  1. जावा रेगुलर एक्सप्रेशन में PatternSyntaxException वर्ग

    PatternSyntaxException वर्ग रेगेक्स स्ट्रिंग में सिंटैक्स त्रुटि के मामले में फेंके गए एक अनियंत्रित अपवाद का प्रतिनिधित्व करता है। इस वर्ग में तीन मुख्य विधियाँ हैं - विवरण प्राप्त करें () - त्रुटि का विवरण देता है। getIndex() - एरर इंडेक्स लौटाता है। getPattern() − रेगुलर एक्सप्रेशन पैटर

  1. जावा रेगुलर एक्सप्रेशंस में सब-एक्सप्रेशन (?> re) को समझाएं

    उपअभिव्यक्ति/मेटाकैरेक्टर “ re) ” बैकट्रैकिंग के बिना स्वतंत्र पैटर्न से मेल खाता है। उदाहरण [0-9]); // नियमित अभिव्यक्ति का संकलन पैटर्न पैटर्न =Pattern.compile(regex); // मैचर ऑब्जेक्ट को पुनः प्राप्त करना मैचर मैचर =पैटर्न। मैचर (इनपुट); // सत्यापित करें कि क्या मैच हुआ बूलियन बूल =matcher.find (

  1. जावा रेगुलर एक्सप्रेशन का उपयोग करके स्ट्रिंग से नंबर निकालें

    निम्नलिखित उदाहरण हैं जो दिखाते हैं कि जावा में रेगुलर एक्सप्रेशन का उपयोग करके एक स्ट्रिंग से नंबर कैसे निकाले जाते हैं। स्ट्रिंग्स को पार्स करने और उससे जानकारी निकालने में सक्षम होना एक महत्वपूर्ण कौशल है जो प्रत्येक परीक्षक के पास होना चाहिए। एपीआई का परीक्षण करते समय यह विशेष रूप से उपयोगी होत