Maison >Java >javaDidacticiel >Classe PatternSyntaxException dans les expressions régulières Java
La classe
PatternSyntaxException représente une exception non vérifiée levée lorsqu'une erreur de syntaxe se produit dans une chaîne d'expression régulière. Cette classe contient trois méthodes principales à savoir -
getDescription() - renvoie la description de l'erreur.
li>getIndex() - Renvoie l'index d'erreur.
getPattern() - Renvoie le modèle d'expression régulière dans lequel l'erreur s'est produite.
getMessage() - Renvoie le message complet comprenant l'erreur, l'index, le modèle d'expression régulière dans lequel l'erreur s'est produite et l'erreur dans le modèle indiqué.
Démonstration en temps réel
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[]) { //Reading String from user System.out.println("Enter a String"); Scanner sc = new Scanner(System.in);String input = sc.nextLine(); //Regular expression to match first digits of a word String regex = "["; //\s+ //Compiling the regular expression try { Pattern pattern = Pattern.compile(regex); //Retrieving the matcher object Matcher matcher = pattern.matcher(input); //Replacing all space characters with single space 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: [
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!