Maison >Java >javaDidacticiel >Comment puis-je utiliser Java Regex pour faire correspondre des modèles non précédés de caractères spécifiques ?

Comment puis-je utiliser Java Regex pour faire correspondre des modèles non précédés de caractères spécifiques ?

DDD
DDDoriginal
2024-12-04 09:59:12680parcourir

How Can I Use Java Regex to Match Patterns Not Preceded by Specific Characters?

Faire correspondre des modèles non précédés de caractères spécifiés avec Regex

En Java, à l'aide d'expressions régulières, vous pouvez faire correspondre des modèles uniquement s'ils ne sont pas précédés par des caractères spécifiques. Prenons l'exemple suivant :

String s = "foobar barbar beachbar crowbar bar ";

Vous souhaitez faire correspondre chaque occurrence de "bar" qui n'est pas précédée de "foo". Les résultats correspondants doivent être :

barbar
beachbar
crowbar
bar

Pour y parvenir, vous pouvez utiliser des lookbehinds négatifs, qui sont indiqués par le motif (?< ;!x), où "x" représente la séquence que vous ne souhaitez pas précéder le motif correspondant.

Dans ce Dans ce cas, l'expression régulière qui atteint votre objectif est :

w*(?

La partie (?

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