Pattern क्लास का compile मेथड दो पैरामीटर्स स्वीकार करता है −
- रेगुलर एक्सप्रेशन को दर्शाने वाला एक स्ट्रिंग मान।
- Pattern क्लास के एक फील्ड का एक इंटीजर मान।
Pattern क्लास का LITERAL फील्ड पैटर्न के लिटरल पार्सिंग को सक्षम करता है। अर्थात सभी रेगुलर एक्सप्रेशन मेटाकैरेक्टर्स और एस्केप सीक्वेंस का कोई विशेष अर्थ नहीं होता, उन्हें लिटरल कैरेक्टर्स के रूप में माना जाता है। इसलिए, यदि आपको रेगुलर एक्सप्रेशन मेटाकैरेक्टर्स को सामान्य कैरेक्टर्स के रूप में मिलान करने की आवश्यकता है तो आपको इसे compile() मेथड में फ्लैग वैल्यू के रूप में रेगुलर एक्सप्रेशन के साथ पास करना होगा।
उदाहरण
import java.util.Scanner;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class Example {
public static void main(String[] args) {
System.out.println("Enter input data: ");
Scanner sc = new Scanner(System.in);
String input = sc.nextLine();
String regex = "^[0-9]";
// Pattern ऑब्जेक्ट बनाना
Pattern pattern = Pattern.compile(regex, Pattern.LITERAL);
// Matcher ऑब्जेक्ट बनाना
Matcher matcher = pattern.matcher(input);
int count = 0;
while(matcher.find()) {
count++;
System.out.println(matcher.group());
}
System.out.println("Number of matches: "+count);
}
}आउटपुट 1
Enter input data: 9848022338 Number of matches: 0
आउटपुट 2
Enter input data: ^[0-9] ^[0-9] Number of matches: 1