Maison > Java > javaDidacticiel > Comment puis-je faire correspondre des modèles en Java tout en excluant les caractères précédents à l'aide d'expressions régulières ?

Comment puis-je faire correspondre des modèles en Java tout en excluant les caractères précédents à l'aide d'expressions régulières ?

Patricia Arquette
Libérer: 2024-11-30 02:41:10
original
596 Les gens l'ont consulté

How Can I Match Patterns in Java While Excluding Preceding Characters Using Regular Expressions?

Correspondance de modèles à l'exclusion des caractères précédents en Java

En Java, les expressions régulières fournissent un mécanisme puissant pour faire correspondre des modèles spécifiques dans des chaînes. Parfois, il devient nécessaire de faire correspondre des motifs uniquement lorsqu'ils ne sont pas précédés de certains caractères. Cet article explore une technique d'expression régulière pour résoudre de tels scénarios.

Lookbehind négatif

Envisagez de faire correspondre le modèle "bar" uniquement lorsqu'il n'est pas précédé de "foo". En utilisant le concept de lookbehind négatif, nous pouvons construire une regex qui atteint cet objectif :

\w*(?<!foo)bar
Copier après la connexion

Voici comment cette regex fonctionne :

  • w* correspond à n'importe quelle séquence de caractères de mot ( lettres, chiffres ou traits de soulignement) qui précède "bar".
  • (?

En appliquant cette expression régulière à l'exemple de chaîne, nous obtenons les correspondances suivantes :

barbar
beachbar
crowbar
bar
Copier après la connexion

Ces correspondances satisfont à la condition que "bar" ne soit pas précédé de "foo".

Conclusion

Négative lookbehind fournit une solution pratique pour faire correspondre des modèles en fonction de leur contexte précédent. Il permet une correspondance précise et peut s'avérer inestimable dans diverses tâches de programmation et de manipulation de données.

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