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

उदाहरण के साथ जावा में मैचर उपयोग ट्रांसपेरेंटबाउंड () विधि

Java.util.regex.Matcher वर्ग एक इंजन का प्रतिनिधित्व करता है जो विभिन्न मिलान संचालन करता है। इस वर्ग के लिए कोई कंस्ट्रक्टर नहीं है, आप java.util.regex.Pattern वर्ग की माचिस () पद्धति का उपयोग करके इस वर्ग का एक ऑब्जेक्ट बना/प्राप्त कर सकते हैं।

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

"\\A(?=\\w{6,10}\\z)";

डिफ़ॉल्ट रूप से, मैचर क्षेत्र की सीमाएं आगे देखने, पीछे देखने और सीमा मिलान के लिए पारदर्शी नहीं होती हैं यानी ये निर्माण क्षेत्र की सीमाओं से परे इनपुट टेक्स्ट की सामग्री से मेल नहीं खा सकते हैं -

उदाहरण 1

आयात करें 10 वर्णों तक स्ट्रिंग रेगेक्स ="\\ ए (? =\\ w {6,10} \\ z)"; System.out.println ("5 से 12 वर्ण दर्ज करें:"); स्ट्रिंग इनपुट =नया स्कैनर (System.in)। अगला (); // एक पैटर्न ऑब्जेक्ट बनाना पैटर्न पैटर्न =Pattern.compile(regex); // एक मैचर ऑब्जेक्ट बनाना मैचर मैचर =पैटर्न। मैचर (इनपुट); // इनपुट स्ट्रिंग के लिए क्षेत्र सेट करना matcher.region(0, 4); // पारदर्शी सीमा पर स्विच करना अगर (matcher.find ()) {System.out.println ("मिलान मिला"); } और { System.out.println ("मिलान नहीं मिला"); } }}

आउटपुट

5 से 12 वर्ण दर्ज करें:sampleTextMatch नहीं मिला

TransparentBounds का उपयोग करें () इस वर्ग विधि की विधि एक बूलियन मान स्वीकार करती है और, यदि आप इस विधि के लिए सही पास करते हैं तो वर्तमान मिलानकर्ता पारदर्शी सीमाओं का उपयोग करता है और यदि आप इस विधि को गलत पास करते हैं तो यह गैर-पारदर्शी सीमाओं का उपयोग करता है।

उदाहरण 2

आयात करें 10 वर्णों तक स्ट्रिंग रेगेक्स ="\\ ए (? =\\ w {6,10} \\ z)"; System.out.println ("5 से 12 वर्ण दर्ज करें:"); स्ट्रिंग इनपुट =नया स्कैनर (System.in)। अगला (); // एक पैटर्न ऑब्जेक्ट बनाना पैटर्न पैटर्न =Pattern.compile(regex); // एक मैचर ऑब्जेक्ट बनाना मैचर मैचर =पैटर्न। मैचर (इनपुट); // इनपुट स्ट्रिंग के लिए क्षेत्र सेट करना matcher.region(0, 4); // पारदर्शी सीमा मिलानकर्ता पर स्विच करना =matcher.useTransparentBounds(true); if(matcher.find ()) { System.out.println ("मिलान मिला"); } और { System.out.println ("मिलान नहीं मिला"); } }}

आउटपुट

5 से 12 वर्ण दर्ज करें:sampletextमिलान मिला

  1. उदाहरण के साथ जावा में पैटर्न मैचर () विधि

    java.util.regex जावा का पैकेज चरित्र अनुक्रमों में विशेष पैटर्न खोजने के लिए विभिन्न वर्ग प्रदान करता है। इस पैकेज का पैटर्न वर्ग नियमित अभिव्यक्ति का संकलित प्रतिनिधित्व है। मिलानकर्ता () इस वर्ग की विधि CharSequence . की एक वस्तु को स्वीकार करती है इनपुट स्ट्रिंग का प्रतिनिधित्व करने वाला वर्ग औ

  1. उदाहरण के साथ जावा में मैचर मैच () विधि

    Java.util.regex.Matcher वर्ग एक ऐसे इंजन का प्रतिनिधित्व करता है जो विभिन्न मिलान संचालन करता है। इस वर्ग के लिए कोई कंस्ट्रक्टर नहीं है जिसे आप java.util.regex.Pattern वर्ग की माचिस () पद्धति का उपयोग करके इस वर्ग का एक ऑब्जेक्ट बना/प्राप्त कर सकते हैं। मैचों () इस वर्ग की विधि नियमित अभिव्यक्ति द

  1. उदाहरण के साथ जावा में मैचर स्टार्ट () विधि

    Java.util.regex.Matcher वर्ग एक इंजन का प्रतिनिधित्व करता है जो विभिन्न मिलान संचालन करता है। इस वर्ग के लिए कोई कंस्ट्रक्टर नहीं है जिसे आप java.util.regex.Pattern वर्ग की माचिस () पद्धति का उपयोग करके इस वर्ग का एक ऑब्जेक्ट बना/प्राप्त कर सकते हैं। प्रारंभ () मैचर वर्ग की विधि मिलान किए गए वर्ण क