Maison  >  Article  >  Java  >  Une analyse approfondie des expressions régulières Java : syntaxe des quantificateurs, classes de caractères et correspondance des limites

Une analyse approfondie des expressions régulières Java : syntaxe des quantificateurs, classes de caractères et correspondance des limites

WBOY
WBOYoriginal
2023-12-26 12:39:11565parcourir

Une analyse approfondie des expressions régulières Java : syntaxe des quantificateurs, classes de caractères et correspondance des limites

Explication détaillée de la syntaxe des expressions régulières Java : quantificateurs, classes de caractères et correspondance des limites

Les expressions régulières sont largement utilisées dans la correspondance et le traitement de chaînes en Java. Cet article présentera en détail les quantificateurs, les classes de caractères et la correspondance des limites dans les expressions régulières, et donnera des exemples de code spécifiques.

1. Quantificateur

Le quantificateur est utilisé pour spécifier le nombre de répétitions d'une règle de correspondance. Les quantificateurs couramment utilisés en Java incluent :

  1. * : correspond au caractère précédent 0 fois ou plus.
  2. + : Faites correspondre le personnage précédent 1 ou plusieurs fois.
  3. ? : Faites correspondre le caractère précédent 0 ou 1 fois.
  4. {n} : fait correspondre le caractère précédent exactement n fois.
  5. {n,} : fait correspondre le caractère précédent au moins n fois.
  6. {n,m} : fait correspondre le caractère précédent au moins n fois et au plus m fois.

Ce qui suit est un exemple spécifique :

String str = "abcccdddeeeee";

String pattern1 = "c*";
System.out.println(str.matches(pattern1)); // 输出true

String pattern2 = "d+";
System.out.println(str.matches(pattern2)); // 输出true

String pattern3 = "e?";
System.out.println(str.matches(pattern3)); // 输出false

String pattern4 = "c{2}";
System.out.println(str.matches(pattern4)); // 输出false

String pattern5 = "c{3,}";
System.out.println(str.matches(pattern5)); // 输出true

String pattern6 = "c{2,4}";
System.out.println(str.matches(pattern6)); // 输出true

La chaîne dans le code ci-dessus est une chaîne contenant différents caractères répétés. Ensuite, certains modèles d'expressions régulières sont définis et mis en correspondance à l'aide de la méthode matches(). Selon le quantificateur, nous pouvons voir différents résultats de correspondance.

2. Classe de caractères

La classe de caractères est utilisée pour spécifier une collection de caractères. Les classes de caractères en Java sont généralement définies à l'aide de []. Vous pouvez utiliser des plages, des exclusions et des caractères prédéfinis pour définir une classe de caractères.

Voici un exemple spécifique :

String str = "abc123";

String pattern1 = "[a-c]";
System.out.println(str.matches(pattern1)); // 输出true

String pattern2 = "[0-9]";
System.out.println(str.matches(pattern2)); // 输出false

String pattern3 = "[a-c0-9]";
System.out.println(str.matches(pattern3)); // 输出true

String pattern4 = "[^a-z]";
System.out.println(str.matches(pattern4)); // 输出false

String pattern5 = "\d";
System.out.println(str.matches(pattern5)); // 输出false

String pattern6 = "\D";
System.out.println(str.matches(pattern6)); // 输出true

Str dans le code ci-dessus est une chaîne contenant des lettres et des chiffres. Ensuite, nous définissons quelques modèles d'expressions régulières et utilisons la méthode matches() pour faire correspondre. Selon la classe de personnage, nous pouvons voir différents résultats de correspondance.

3. Correspondance de limite

La correspondance de limite est utilisée pour limiter la position d'une correspondance. En Java, il existe les symboles de correspondance de limite suivants :

  1. ^ : correspond à la position de départ de la chaîne.
  2. $ : correspond à la position finale de la chaîne.
  3. : Faites correspondre les limites des mots.
  4. B : Faites correspondre les limites autres que les mots.

Voici un exemple spécifique :

String str = "hello world";

String pattern1 = "^hello";
System.out.println(str.matches(pattern1)); // 输出true

String pattern2 = "world$";
System.out.println(str.matches(pattern2)); // 输出true

String pattern3 = "\bhello";
System.out.println(str.matches(pattern3)); // 输出true

String pattern4 = "\Bworld";
System.out.println(str.matches(pattern4)); // 输出false

La chaîne dans le code ci-dessus est une chaîne contenant une phrase. Ensuite, nous définissons quelques modèles d'expressions régulières et utilisons la méthode matches() pour faire correspondre. En fonction des symboles de correspondance de limites, nous pouvons voir différents résultats de correspondance.

Résumé :

Cet article présente les quantificateurs, les classes de caractères et la correspondance des limites dans les expressions régulières Java, et donne des exemples de code spécifiques. Dans la programmation réelle, les expressions régulières sont des outils très utiles qui peuvent simplifier la correspondance et le traitement des chaînes. En maîtrisant l'utilisation de base de ces expressions régulières, vous pouvez utiliser Java pour traiter les chaînes plus efficacement.

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!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn