जावा रेगेक्स - त्वरित गाइड
जावा नियमित अभिव्यक्ति के साथ मेल खाते पैटर्न के लिए java.util.regex पैकेज प्रदान करता है। जावा नियमित अभिव्यक्ति पर्ल प्रोग्रामिंग भाषा के समान हैं और सीखने में बहुत आसान हैं।
एक नियमित अभिव्यक्ति वर्णों का एक विशेष अनुक्रम है जो आपको एक पैटर्न में आयोजित एक विशेष वाक्यविन्यास का उपयोग करते हुए, तार के अन्य तारों या सेटों को मिलाने या खोजने में मदद करता है। उनका उपयोग पाठ और डेटा को खोजने, संपादित करने या हेरफेर करने के लिए किया जा सकता है।
Java.util.regex पैकेज में मुख्य रूप से निम्नलिखित तीन वर्ग शामिल हैं -
Pattern Class- एक पैटर्न ऑब्जेक्ट एक नियमित अभिव्यक्ति का संकलित प्रतिनिधित्व है। पैटर्न वर्ग कोई सार्वजनिक निर्माण प्रदान नहीं करता है। एक पैटर्न बनाने के लिए, आपको सबसे पहले इसके किसी सार्वजनिक स्टेटिक का आह्वान करना होगाcompile()विधियाँ, जो तब एक पैटर्न ऑब्जेक्ट लौटाएंगी। ये विधियाँ पहले तर्क के रूप में एक नियमित अभिव्यक्ति को स्वीकार करती हैं।
Matcher Class- एक मिलान ऑब्जेक्ट वह इंजन है जो पैटर्न की व्याख्या करता है और एक इनपुट स्ट्रिंग के खिलाफ मैच संचालन करता है। पैटर्न वर्ग की तरह, माचिस कोई सार्वजनिक कंस्ट्रक्टर को परिभाषित नहीं करता है। आप एक निवेशक ऑब्जेक्ट प्राप्त करके प्राप्त करते हैंmatcher() एक पैटर्न ऑब्जेक्ट पर विधि।
PatternSyntaxException - एक PatternSyntaxException ऑब्जेक्ट एक अनियंत्रित अपवाद है जो एक नियमित अभिव्यक्ति पैटर्न में एक वाक्यविन्यास त्रुटि को इंगित करता है।
कैप्चरिंग समूह एक एकल इकाई के रूप में कई वर्णों का इलाज करने का एक तरीका है। वे कोष्ठकों के एक सेट के अंदर रखे जाने वाले पात्रों को रखकर बनाए जाते हैं। उदाहरण के लिए, नियमित अभिव्यक्ति (कुत्ता) एक एकल समूह बनाता है जिसमें "डी", "ओ", और "जी" अक्षर होते हैं।
कैप्चरिंग समूहों को उनके शुरुआती कोष्ठकों को बाईं ओर से दाईं ओर गिना जाता है। उदाहरण में ((ए) (बी (सी)), चार ऐसे समूह हैं -
- ((A)(B(C)))
- (A)
- (B(C))
- (C)
यह पता लगाने के लिए कि अभिव्यक्ति में कितने समूह मौजूद हैं, एक मिलान ऑब्जेक्ट पर GroupCount विधि को कॉल करें। GroupCount पद्धति एक लौटाती हैint मिलानकर्ता के पैटर्न में मौजूद कैप्चरिंग समूहों की संख्या दिखा रहा है।
एक विशेष समूह, समूह 0 भी है, जो हमेशा संपूर्ण अभिव्यक्ति का प्रतिनिधित्व करता है। यह समूह GroupCount द्वारा रिपोर्ट की गई कुल में शामिल नहीं है।
उदाहरण
निम्नलिखित उदाहरण दिखाता है कि दिए गए अल्फ़ान्यूमेरिक स्ट्रिंग से एक अंक स्ट्रिंग कैसे प्राप्त करें -
import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class RegexMatches {
public static void main( String args[] ) {
// String to be scanned to find the pattern.
String line = "This order was placed for QT3000! OK?";
String pattern = "(.*)(\\d+)(.*)";
// Create a Pattern object
Pattern r = Pattern.compile(pattern);
// Now create matcher object.
Matcher m = r.matcher(line);
if (m.find( )) {
System.out.println("Found value: " + m.group(0) );
System.out.println("Found value: " + m.group(1) );
System.out.println("Found value: " + m.group(2) );
} else {
System.out.println("NO MATCH");
}
}
}
यह निम्नलिखित परिणाम का उत्पादन करेगा -
उत्पादन
Found value: This order was placed for QT3000! OK?
Found value: This order was placed for QT300
Found value: 0
परिचय
java.util.regex.MatchResultइंटरफ़ेस एक मैच ऑपरेशन के परिणाम का प्रतिनिधित्व करता है। इस इंटरफ़ेस में क्वेरी विधियों का उपयोग किया जाता है जो एक नियमित अभिव्यक्ति के खिलाफ मैच के परिणामों को निर्धारित करता है। मैच की सीमाएँ, समूह और समूह की सीमाओं को देखा जा सकता है, लेकिन MatchResult के माध्यम से संशोधित नहीं किया जा सकता है।
इंटरफ़ेस घोषणा
निम्नलिखित के लिए घोषणा है java.util.regex.MatchResult इंटरफ़ेस -
public interface MatchResult
इंटरफ़ेस के तरीके
अनु क्रमांक | विधि और विवरण |
---|---|
1 | इरादा करना() अंतिम चरित्र के मिलान के बाद ऑफ़सेट लौटाता है। |
2 | इंट एंड (इंट ग्रुप) इस मैच के दौरान दिए गए समूह द्वारा कब्जा किए गए परिणाम के अंतिम चरित्र के बाद ऑफसेट लौटाता है। |
3 | स्ट्रिंग समूह () पिछले मैच से मिलान किए गए इनपुट के बाद रिटर्न देता है। |
4 | स्ट्रिंग समूह (इंट समूह) पिछले मैच के संचालन के दौरान दिए गए समूह द्वारा कब्जा कर लिया इनपुट इनपुट रिटर्न देता है। |
5 | int groupCount () इस मैच परिणाम के पैटर्न में कैप्चरिंग समूहों की संख्या लौटाता है। |
6 | इंट स्टार्ट () मैच का स्टार्ट इंडेक्स लौटाता है। |
7 | इंट स्टार्ट (इंट ग्रुप) इस मैच के दौरान दिए गए समूह द्वारा कब्जा किए गए परिणाम का प्रारंभ सूचकांक लौटाता है। |
परिचय
java.util.regex.Pattern वर्ग एक नियमित अभिव्यक्ति का संकलित प्रतिनिधित्व करता है।
वर्ग घोषणा
निम्नलिखित के लिए घोषणा है java.util.regex.Pattern वर्ग -
public final class Pattern
extends Object
implements Serializable
मैदान
इसके लिए निम्नलिखित क्षेत्र हैं java.util.regex.Duration वर्ग -
static int CANON_EQ - विहित समानता को सक्षम करता है।
static int CASE_INSENSITIVE - केस-असंवेदनशील मिलान सक्षम करता है।
static int COMMENTS - पैटर्न में व्हाट्सएप और टिप्पणियों की अनुमति देता है।
static int DOTALL - डॉट मोड को सक्षम करता है।
static int LITERAL - पैटर्न के शाब्दिक पार्सिंग को सक्षम करता है।
static int MULTILINE - मल्टीलाइन मोड को सक्षम करता है।
static int UNICODE_CASE - यूनिकोड-जागरूक केस तह को सक्षम करता है।
static int UNICODE_CHARACTER_CLASS - पूर्वनिर्धारित चरित्र वर्गों और POSIX वर्ण वर्गों के यूनिकोड संस्करण को सक्षम करता है।
static int UNIX_LINES - यूनिक्स लाइनों मोड सक्षम करता है।
क्लास के तरीके
अनु क्रमांक | विधि और विवरण |
---|---|
1 | स्थिर पैटर्न संकलन (स्ट्रिंग regex) दिए गए नियमित अभिव्यक्ति को एक पैटर्न में संकलित करता है। |
2 | स्थिर पैटर्न संकलन (स्ट्रिंग रेगेक्स, इंट फ्लैग) दिए गए झंडे के साथ दिए गए नियमित अभिव्यक्ति को एक पैटर्न में संकलित करता है। |
3 | int झंडे () इस पैटर्न के मैच झंडे लौटाता है। |
4 | मिलान करने वाला (चार इनपुट इनपुट) एक मिलानकर्ता बनाता है जो इस पैटर्न के खिलाफ दिए गए इनपुट से मेल खाएगा। |
5 | स्टूल बूलियन मैच (स्ट्रिंग रेगेक्स, चारसेंसेंस इनपुट) दिए गए नियमित अभिव्यक्ति को संकलित करता है और इसके विरुद्ध दिए गए इनपुट से मिलान करने का प्रयास करता है। |
6 | स्ट्रिंग पैटर्न () वह नियमित अभिव्यक्ति लौटाता है जिससे यह पैटर्न संकलित किया गया था। |
7 | स्थिर स्ट्रिंग बोली (स्ट्रिंग s) निर्दिष्ट स्ट्रिंग के लिए एक शाब्दिक पैटर्न स्ट्रिंग लौटाता है। |
8 | स्ट्रिंग [] विभाजन (इनपुट इनपुट) इस पैटर्न के मैचों के आसपास दिए गए इनपुट अनुक्रम को विभाजित करता है। |
9 | स्ट्रिंग [] स्प्लिट (चारेंसेंस इनपुट, इंट लिमिट) इस पैटर्न के मैचों के आसपास दिए गए इनपुट अनुक्रम को विभाजित करता है। |
10 | स्ट्रिंग toString () इस पैटर्न का स्ट्रिंग प्रतिनिधित्व लौटाता है। |
तरीके विरासत में मिले
इस वर्ग को निम्नलिखित वर्गों से विधियाँ प्राप्त होती हैं -
- Java.lang.Object
परिचय
java.util.regex.Matcher क्लास एक इंजन के रूप में कार्य करता है जो एक पैटर्न की व्याख्या करके एक चरित्र अनुक्रम पर मैच संचालन करता है।
वर्ग घोषणा
निम्नलिखित के लिए घोषणा है java.util.regex.Matcher वर्ग -
public final class Matcher
extends Object
implements MatchResult
क्लास के तरीके
अनु क्रमांक | विधि और विवरण |
---|---|
1 | मिलान परिशिष्ट (StringBuffer sb, स्ट्रिंग प्रतिस्थापन) एक गैर-टर्मिनल परिशिष्ट और प्रतिस्थापित कदम लागू करता है। |
2 | StringBuffer परिशिष्ट (StringBuffer sb) एक टर्मिनल परिशिष्ट-और-प्रतिस्थापित कदम लागू करता है। |
3 | इरादा करना() अंतिम चरित्र के मिलान के बाद ऑफ़सेट लौटाता है। |
4 | इंट एंड (इंट ग्रुप) पिछले मैच के संचालन के दौरान दिए गए समूह द्वारा कब्जा किए गए परिणाम के अंतिम चरित्र के बाद ऑफसेट लौटाता है। |
5 | बूलियन खोजें () पैटर्न से मेल खाने वाले इनपुट अनुक्रम के अगले क्रम को खोजने का प्रयास। |
6 | बूलियन खोजें (int start) इस मिलानकर्ता को रीसेट करता है और फिर निर्दिष्ट अनुक्रम पर शुरू होने वाले पैटर्न से मेल खाने वाले इनपुट अनुक्रम के अगले क्रम को खोजने का प्रयास करता है। |
7 | स्ट्रिंग समूह () पिछले मैच के संचालन के दौरान दिए गए समूह द्वारा कब्जा कर लिया इनपुट इनपुट रिटर्न देता है। |
8 | स्ट्रिंग समूह (स्ट्रिंग नाम) पिछले मैच संचालन के दौरान दिए गए नामित-कैप्चरिंग समूह द्वारा कब्जा किए गए इनपुट के बाद रिटर्न देता है। |
9 | int groupCount () इस मिलानकर्ता के पैटर्न में कैप्चरिंग समूहों की संख्या लौटाता है। |
10 | बूलियन hasAchoringBounds () इस मिलान के लिए क्षेत्र सीमा की एंकरिंग को क्वेरी करता है। |
1 1 | बूलियन hasTransparentBounds () इस मिलान के लिए क्षेत्र सीमा की पारदर्शिता को क्वेरी करता है। |
12 | बूलियन हिट एंड () इस मिलानकर्ता द्वारा किए गए पिछले मैच ऑपरेशन में खोज इंजन द्वारा इनपुट के अंत को मारा गया था, तो सच है। |
13 | बूलियन देख रहे हैं () पैटर्न के विपरीत, क्षेत्र की शुरुआत में शुरू होने वाले इनपुट अनुक्रम से मिलान करने का प्रयास। |
14 | बूलियन मैच () पैटर्न के खिलाफ पूरे क्षेत्र से मेल खाने का प्रयास। |
15 | पैटर्न पैटर्न () इस मिलानकर्ता द्वारा व्याख्या की गई परिपाटी को लौटाता है। |
16 | स्थिर स्ट्रिंग उद्धरण (स्ट्रिंग s) निर्दिष्ट स्ट्रिंग के लिए एक शाब्दिक प्रतिस्थापन स्ट्रिंग लौटाता है। |
17 | मिलान क्षेत्र (int start, int end) इस मिलानकर्ता के क्षेत्र की सीमा निर्धारित करता है। |
18 | int क्षेत्र और () इस मिलानकर्ता के क्षेत्र के अंतिम सूचकांक (अनन्य) की रिपोर्ट करता है। |
19 | इंट क्षेत्रस्ट्रार्ट () इस मिलानकर्ता के क्षेत्र के प्रारंभ सूचकांक की रिपोर्ट करता है। |
20 | स्ट्रिंग प्रतिस्थापन (स्ट्रिंग प्रतिस्थापन) इनपुट अनुक्रम के प्रत्येक क्रम को बदलता है जो दिए गए प्रतिस्थापन स्ट्रिंग के साथ पैटर्न से मेल खाता है। |
21 | स्ट्रिंग प्रतिस्थापन (स्ट्रिंग प्रतिस्थापन) इनपुट अनुक्रम के पहले क्रम को प्रतिस्थापित करता है जो दिए गए प्रतिस्थापन स्ट्रिंग के साथ पैटर्न से मेल खाता है। |
22 | बूलियन की आवश्यकता यदि अधिक इनपुट सकारात्मक मिलान को ऋणात्मक में बदल सकता है तो यह सही है। |
23 | मिलान रीसेट () इस मिलानकर्ता को रीसेट करता है। |
24 | मिलानकर्ता रीसेट (CharSequence input) एक नए इनपुट अनुक्रम के साथ इस मिलान को रीसेट करता है। |
25 | इंट स्टार्ट () पिछले मैच का स्टार्ट इंडेक्स लौटाता है। |
26 | इंट स्टार्ट (इंट ग्रुप) पिछले मैच के संचालन के दौरान दिए गए समूह द्वारा कैप्चर की गई अनुक्रमणिका का प्रारंभ सूचकांक लौटाता है। |
27 | MatchResult toMatchResult () इस मैचर के मैच स्टेट को एक मैचऑल्ट के रूप में लौटाता है। |
28 | स्ट्रिंग toString () इस मिलानकर्ता के स्ट्रिंग प्रतिनिधित्व को लौटाता है। |
29 | माचिस का उपयोग इस मिलान के लिए क्षेत्र सीमा की एंकरिंग सेट करता है। |
30 | मिलान का उपयोग करें इस मिलानकर्ता द्वारा मिलान करने के लिए उपयोग किए जाने वाले पैटर्न में परिवर्तन होता है। |
31 | माचिस का उपयोगट्रांसपरेंटबाउंड्स (बूलियन बी) इस मिलान के लिए क्षेत्र सीमा की पारदर्शिता निर्धारित करता है। |
तरीके विरासत में मिले
इस वर्ग को निम्नलिखित वर्गों से विधियाँ प्राप्त होती हैं -
- Java.lang.Object
परिचय
java.util.regex.PatternSyntaxException वर्ग एक अनियंत्रित अपवाद को दर्शाता है जो एक नियमित अभिव्यक्ति पैटर्न में एक वाक्यविन्यास त्रुटि को इंगित करता है।
वर्ग घोषणा
निम्नलिखित के लिए घोषणा है java.util.regex.PatternSyntaxException वर्ग -
public class PatternSyntaxException
extends IllegalArgumentException
कंस्ट्रक्टर्स
अनु क्रमांक | विधि और विवरण |
---|---|
1 | PatternSyntaxException(String desc, String regex, int index) इस वर्ग के एक नए उदाहरण का निर्माण करता है। |
क्लास के तरीके
अनु क्रमांक | विधि और विवरण |
---|---|
1 | String getDescription() त्रुटि के विवरण को पुनः प्राप्त करता है। |
2 | int getIndex() त्रुटि सूचकांक को पुनः प्राप्त करता है। |
3 | String getMessage() सिंटैक्स त्रुटि और उसके सूचकांक, गलत नियमित अभिव्यक्ति पैटर्न, और पैटर्न के भीतर त्रुटि सूचकांक का एक दृश्य संकेत युक्त एक बहु-पंक्ति स्ट्रिंग लौटाता है। |
4 | String getPattern() गलत नियमित-अभिव्यक्ति पैटर्न को पुनः प्राप्त करता है। |
तरीके विरासत में मिले
इस वर्ग को निम्नलिखित वर्गों से विधियाँ प्राप्त होती हैं -
- Java.lang.Throwable
- Java.lang.Object
उदाहरण
निम्न उदाहरण java.util.regex.Pattern.PatternSyntaxException वर्ग विधियों का उपयोग दिखाता है।
package com.tutorialspoint;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
import java.util.regex.PatternSyntaxException;
public class PatternSyntaxExceptionDemo {
private static String REGEX = "[";
private static String INPUT = "The dog says meow " + "All dogs say meow.";
private static String REPLACE = "cat";
public static void main(String[] args) {
try{
Pattern pattern = Pattern.compile(REGEX);
// get a matcher object
Matcher matcher = pattern.matcher(INPUT);
INPUT = matcher.replaceAll(REPLACE);
} catch(PatternSyntaxException e){
System.out.println("PatternSyntaxException: ");
System.out.println("Description: "+ e.getDescription());
System.out.println("Index: "+ e.getIndex());
System.out.println("Message: "+ e.getMessage());
System.out.println("Pattern: "+ e.getPattern());
}
}
}
हम उपरोक्त कार्यक्रम संकलित करें और चलाएं, इससे निम्नलिखित परिणाम प्राप्त होंगे -
PatternSyntaxException:
Description: Unclosed character class
Index: 0
Message: Unclosed character class near index 0
[
^
Pattern: [
जावा में नियमित अभिव्यक्ति का उपयोग करते हुए मिलान पात्रों के विभिन्न उदाहरण निम्नलिखित हैं।
अनु क्रमांक | निर्माण और मेल खाता है |
---|---|
1 | एक्स वर्ण x |
2 | \\ बैकस्लैश चरित्र |
3 | \ 0n अष्ट मान वाला वर्ण 0n (0 ≤ n) 7) |
4 | \ 0nn अष्ट मान वाला वर्ण 0nn (0 ≤ n) 7) |
5 | \ 0mnn अष्ट मान वाला वर्ण 0mnn (0 ≤ m 0 3, 0 oct n) 7) |
6 | \ xhh हेक्साडेसिमल मान 0xhh के साथ वर्ण |
7 | \ uhhhh हेक्साडेसिमल मान 0xhhh के साथ वर्ण |
8 | \ t टैब वर्ण ('\ u0009') |
9 | \ n नई पंक्ति (पंक्ति फ़ीड) वर्ण ('\ u000A') |
10 | \ r कैरिज-रिटर्न चरित्र ('\ u000D') |
1 1 | \ च फ़ॉर्म-फ़ीड वर्ण ('\ u000C') |
जावा में नियमित अभिव्यक्ति का उपयोग करते हुए मिलान वर्ण वर्गों के विभिन्न उदाहरण निम्नलिखित हैं।
अनु क्रमांक | निर्माण और मेल खाता है |
---|---|
1 | [Abc] ए, बी, या सी (सरल वर्ग)। |
2 | [^ Abc] किसी भी चरित्र को ए, बी या सी (नकार) को छोड़कर। |
3 | [A-zA-Z] Z के माध्यम से एक या Z के माध्यम से, समावेशी (रेंज)। |
4 | [विज्ञापन [mp]] p के माध्यम से d, या m: [a-dm-p] (संघ)। |
5 | [Az && [डेफ]] डी, ई, या एफ (चौराहा)। |
6 | [Az && [^ bc]] एक थ्रू z, b और c को छोड़कर: [ad-z] (घटाव) |
7 | [Az && [^ mp]] z के माध्यम से, और p के माध्यम से नहीं m: [a-lq-z] (घटाव)। |
जावा में नियमित अभिव्यक्ति का उपयोग करते हुए पूर्वनिर्धारित चरित्र वर्गों के मिलान के विभिन्न उदाहरण निम्नलिखित हैं।
अनु क्रमांक | निर्माण और मेल खाता है |
---|---|
1 | । कोई भी चरित्र (लाइन टर्मिनेटरों से मेल खाता हो सकता है या नहीं भी)। |
2 | \ घ एक अंक: [0-9]। |
3 | \ डी एक गैर-अंक: [^ 0-9]। |
4 | \ रों एक व्हाट्सएप चरित्र: [\ t \ n \ x0B \ f \ r] |
5 | \ एस एक गैर-व्हाट्सएप चरित्र: [^ \ _]। |
6 | \ w एक शब्द चरित्र: [a-zA-Z_0-9]। |
7 | \ डब्ल्यू एक गैर-शब्द चरित्र: [^ \ w] |
जावा में नियमित अभिव्यक्ति का उपयोग करके POSIX वर्ण वर्गों के मिलान के विभिन्न उदाहरण निम्नलिखित हैं।
अनु क्रमांक | निर्माण और मेल खाता है |
---|---|
1 | \ P {} लोअर एक निचली स्थिति का अक्षर वर्ण: [az]। |
2 | \ P {} अपर एक ऊपरी मामले में वर्णमाला वर्ण: [AZ]। |
3 | \ P {} ASCII सभी ASCII: [\ x00- \ x7F]। |
4 | \ P {} अल्फा एक वर्णमाला वर्ण: [\ p {निचला} \ p {ऊपरी}]। |
5 | \ P {} डिजिट एक दशमलव अंक: [0-9]। |
6 | \ P {} Alnum एक अल्फ़ान्यूमेरिक वर्ण: [\ p {अल्फा} \ p {अंक}]। |
7 | \ P {} Punct विराम चिह्न: "!" # $% & '() * +, -। /: <=> @ [@ \ _ ^ _> {|} | |
8 | \ P {} ग्राफ़ एक दृश्यमान चरित्र: [\ p {Alnum} \ p {Punct}]। |
9 | \ P {} प्रिंट एक मुद्रण योग्य वर्ण: [\ p {ग्राफ़} \ x20]। |
10 | \ P {रिक्त} एक स्थान या एक टैब: [\ t]। |
1 1 | \ P {} XDigit एक हेक्साडेसिमल अंक: [0-9a-fA-F]। |
12 | \ P {अंतरिक्ष} एक व्हाट्सएप चरित्र: [\ t \ n \ x0B \ f \ r]। |
जावा में नियमित अभिव्यक्ति का उपयोग करते हुए जेएवीए वर्ण वर्गों के मिलान के विभिन्न उदाहरण निम्नलिखित हैं।
अनु क्रमांक | निर्माण और मेल खाता है |
---|---|
1 | \ P {} javaLowerCase Java.lang.Character.isLowerCase () के बराबर। |
2 | \ P {} javaUpperCase Java.lang.Character.isUpperCase () के बराबर। |
3 | \ P {} javaWhitespace Java.lang.Character.isWhitespace () के बराबर। |
4 | \ P {} javaMirrored Java.lang.Character.isMirrored () के बराबर। |
जावा में नियमित अभिव्यक्ति का उपयोग करके यूनिकोड वर्ण वर्गों के मिलान के विभिन्न उदाहरण निम्नलिखित हैं।
अनु क्रमांक | निर्माण और मेल खाता है |
---|---|
1 | \ P {} IsLatin एक लैटिन स्क्रिप्ट चरित्र। |
2 | \ P {} InGreek ग्रीक ब्लॉक में एक चरित्र। |
3 | \ P {} लू एक बड़े अक्षर। |
4 | \ P {} IsAlphabetic एक वर्णमाला चरित्र (द्विआधारी संपत्ति)। |
5 | \ P {} एससी एक मुद्रा प्रतीक। |
6 | \ P {} InGreek ग्रीक ब्लॉक में एक को छोड़कर कोई भी चरित्र। |
7 | [\ P {एल} && [^ \ p {लू}]] अपरकेस अक्षर को छोड़कर कोई भी पत्र। |
जावा में नियमित अभिव्यक्ति का उपयोग करते हुए सीमा मिलान के विभिन्न उदाहरण हैं।
अनु क्रमांक | निर्माण और मेल खाता है |
---|---|
1 | ^ एक पंक्ति की शुरुआत। |
2 | $ एक पंक्ति का अंत। |
3 | \ b एक शब्द सीमा। |
4 | \ बी एक गैर-शब्द सीमा। |
5 | \ए इनपुट की शुरुआत। |
6 | \ जी पिछले मैच का अंत। |
7 | \ जेड इनपुट का अंत लेकिन अंतिम टर्मिनेटर के लिए, यदि कोई हो। |
8 | \ z इनपुट का अंत। |
एक लालची क्वांटिफायर पूरे स्ट्रिंग को खोजने के लिए खोज इंजन को इंगित करता है और यह जांचता है कि क्या यह दिए गए regexp से मेल खाता है। जावा में नियमित अभिव्यक्ति का उपयोग करते हुए लालची क्वांटिफायर के विभिन्न उदाहरण हैं।
अनु क्रमांक | निर्माण और मेल खाता है |
---|---|
1 | एक्स? एक्स, एक बार या बिल्कुल नहीं। |
2 | एक्स* एक्स, शून्य या अधिक बार |
3 | एक्स + एक्स, एक या अधिक बार। |
4 | एक्स {n} एक्स, बिल्कुल एन बार। |
5 | एक्स {n,} एक्स, कम से कम एन बार। |
6 | X {n, m} एक्स, कम से कम एन लेकिन एम समय से अधिक नहीं |
एक अनिच्छुक क्वांटिफायर स्ट्रिंग के सबसे कम संभव टुकड़े के साथ शुरू करने के लिए खोज इंजन को इंगित करता है। एक बार मैच मिला, इंजन जारी रहा; अन्यथा यह जाँच की जा रही स्ट्रिंग के खंड में एक वर्ण जोड़ता है और वह खोज करता है, और इसी तरह। यह प्रक्रिया तब तक चलती है जब तक कि यह एक मैच नहीं हो जाता है या पूरे स्ट्रिंग का उपयोग नहीं किया गया है। जावा में नियमित अभिव्यक्ति का उपयोग करते हुए अनिच्छुक क्वांटिफायर के विभिन्न उदाहरण निम्नलिखित हैं।
अनु क्रमांक | निर्माण और मेल खाता है |
---|---|
1 | एक्स?? एक्स, एक बार या बिल्कुल नहीं। |
2 | एक्स*? एक्स, शून्य या अधिक बार |
3 | एक्स +? एक्स, एक या अधिक बार। |
4 | एक्स {n}? एक्स, बिल्कुल एन बार। |
5 | एक्स {n,}? एक्स, कम से कम एन बार। |
6 | X {n, m}? एक्स, कम से कम एन लेकिन एम समय से अधिक नहीं |
एक परिमाणी परिमाणक लालची परिमाणक के समान है। यह पूरे स्ट्रिंग की जांच करके इंजन को शुरू करने का संकेत देता है। यह इस अर्थ में अलग है कि अगर यह काम नहीं करता है, अगर मैच विफल हो गया और पीछे मुड़कर नहीं देखा गया है। जावा में नियमित अभिव्यक्ति का उपयोग करके पॉजेसिव क्वांटिफायर के विभिन्न उदाहरण निम्नलिखित हैं।
अनु क्रमांक | निर्माण और मेल खाता है |
---|---|
1 | एक्स? + एक्स, एक बार या बिल्कुल नहीं। |
2 | एक्स * + एक्स, शून्य या अधिक बार |
3 | एक्स ++ एक्स, एक या अधिक बार। |
4 | एक्स {n} + एक्स, बिल्कुल एन बार। |
5 | एक्स {n,} + एक्स, कम से कम एन बार। |
6 | X {n, m} + एक्स, कम से कम एन लेकिन एम समय से अधिक नहीं |
जावा में नियमित अभिव्यक्ति का उपयोग करते हुए लॉजिकल ऑपरेटर्स के विभिन्न उदाहरण हैं।
अनु क्रमांक | निर्माण और मेल खाता है |
---|---|
1 | XY X, Y के बाद। |
2 | एक्स | Y या तो X या Y। |