Maison > Java > javaDidacticiel > Modèles de correspondance d'expressions régulières Java (gourmands, réticents, possessifs)

Modèles de correspondance d'expressions régulières Java (gourmands, réticents, possessifs)

高洛峰
Libérer: 2017-01-16 11:16:37
original
1450 Les gens l'ont consulté

Gaviourdité : Correspondance maximale

X?, X*, X, X{n,} est la correspondance maximale. Par exemple, si vous souhaitez utiliser "<. >" pour faire correspondre "aaava abb", le résultat attendu correspond peut-être à "", mais le résultat réel correspondra à "aava .

En mode gourmandise, il essaiera de faire correspondre une plage aussi large que possible jusqu'à ce que tout le contenu corresponde. À ce moment-là, lorsqu'il est trouvé que le match ne peut pas réussir, il commencera à se réduire à de petits matchs jusqu'à ce que l'appariement soit réussi

String test = "a<tr>aava </tr>abb ";
String reg = "<.+>";
System.out.println(test.replaceAll(reg, "###"));
Copier après la connexion

Sortie : a###abb

Réticent. (Paresse) (type réticent) : correspondance minimale
X??, X*?, >En mode Réticent, tant que le match est réussi, il n'essaiera plus de faire correspondre un éventail de contenus plus large

Sortie : a###aava ###abb
String test = "a<tr>aava </tr>abb ";
String reg = "<.+?>";
System.out.println(test.replaceAll(reg, "###"));
Copier après la connexion

Différent de la gourmandise, faisant correspondre le contenu deux fois en mode réticent

Posssif (possessif) : correspondance complète

X ?, X*, Correspondance exacte.


Le mode possessif a une certaine similitude avec la gourmandise, c'est-à-dire qu'il essaie de faire correspondre la plus grande gamme de contenus jusqu'à la fin du contenu, mais contrairement à la gourmandise, la correspondance exacte ne retombe plus. et essaie de faire correspondre une plage de taille plus petite

String test = "a<tr>aava </tr>abb ";
String reg = "<.++>";
String test2 = "<tr>";
String reg2 = "<tr>";
System.out.println(test.replaceAll(reg, "###"));
System.out.println(test2.replaceAll(reg2, "###"));
Copier après la connexion

Sortie : aaava abb

Plus de modèles de correspondance d'expressions régulières Java. (type gourmand, réticent, type possessif), veuillez faire attention au site PHP chinois

Étiquettes associées:
source:php.cn
Déclaration de ce site Web
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
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal