PatternSyntaxException क्लास रेगुलर एक्सप्रेशन स्ट्रिंग में सिंटैक्स त्रुटि के मामले में फेंके जाने वाले अनचेक्ड अपवाद को दर्शाती है। इस क्लास में तीन मुख्य विधियां हैं:
- getDescription() - त्रुटि का विवरण वापस करता है।
- getIndex() - त्रुटि इंडेक्स वापस करता है।
- getPattern() - त्रुटि वाले नियमित अभिव्यक्ति पैटर्न को वापस करता है।
- getMessage() - त्रुटि, इंडेक्स, त्रुटि वाले पैटर्न, पैटर्न में त्रुटि के संकेत वाला पूरा संदेश वापस करता है।
उदाहरण
import java.util.Scanner;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
import java.util.regex.PatternSyntaxException;
public class PatternSyntaxExceptionExample {
public static void main(String args[]) {
// उपयोगकर्ता से स्ट्रिंग पढ़ना
System.out.println("Enter a String");
Scanner sc = new Scanner(System.in);
String input = sc.nextLine();
// शब्द के पहले अंकों से मिलान करने के लिए नियमित अभिव्यक्ति
String regex = "["; //\\s+
// नियमित अभिव्यक्ति संकलित करना
try {
Pattern pattern = Pattern.compile(regex);
// मिलानकर्ता ऑब्जेक्ट प्राप्त करना
Matcher matcher = pattern.matcher(input);
// सभी स्पेस वर्णों को सिंगल स्पेस से प्रतिस्थापित करना
String result = matcher.replaceAll(" ");
System.out.print("Text after removing unwanted spaces:\n" + result);
} catch (PatternSyntaxException ex) {
System.out.println("Description: " + ex.getDescription());
System.out.println("Index: " + ex.getIndex());
System.out.println("Message: " + ex.getMessage());
System.out.println("Pattern: " + ex.getPattern());
}
}
}
आउटपुट
Enter a String: this is a [sample text [ Description: Unclosed character class Index: 0 Message: Unclosed character class near index 0 [ ^ Pattern: [