Maison > Java > javaDidacticiel > Comment les ancres « ^ » et « $ » améliorent-elles la correspondance des expressions régulières ?

Comment les ancres « ^ » et « $ » améliorent-elles la correspondance des expressions régulières ?

Susan Sarandon
Libérer: 2024-12-25 11:55:39
original
729 Les gens l'ont consulté

How Do

Ancres dans les expressions régulières : "^" et "$"

En plongeant dans le monde des expressions régulières, vous pouvez rencontrer des caractères comme "^" et "$" avec des significations apparemment énigmatiques. Ces symboles, appelés ancres, ont le pouvoir d'affiner vos techniques de correspondance de modèles et de garantir des correspondances précises.

Un exemple où les ancres brillent est celui de la validation par e-mail. Considérez les deux expressions régulières suivantes :

  1. "w @w [.]w "
  2. "^w @w [.]w $"

La première expression capture les adresses e-mail telles que "[email protected]". Cependant, cela ne garantit pas que la chaîne entière soit une adresse e-mail. Le texte correspondant peut exclure les espaces environnants.

En revanche, la deuxième expression utilise des ancres ^ et $ pour garantir que l'intégralité de la chaîne d'entrée correspond au modèle d'e-mail. ^ signifie le début de la chaîne, tandis que $ indique la fin. Cette combinaison impose une correspondance plus stricte, échouant si des caractères précèdent ou suivent le modèle d'e-mail.

Gardez à l'esprit que certaines implémentations d'expressions régulières peuvent implicitement appliquer des ancres au début et à la fin de la chaîne. Par exemple, la méthode ".matches()" de Java fait cela. Pour surmonter ce comportement, vous pouvez utiliser explicitement les ancres ^ et $.

De plus, ^ et $ peuvent également correspondre au début et à la fin des lignes lorsque l'option multiligne (Pattern.MULTILINE ou (?m)) est activé. Cela vous permet d'adapter votre recherche pour qu'elle corresponde à des lignes spécifiques de l'entrée.

En incorporant les ancres ^ et $ dans vos expressions régulières, vous obtenez un meilleur contrôle sur le processus de correspondance, garantissant que vos modèles ne trouvent que ce que vous souhaitez. à eux.

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!

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
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal