Modèles de correspondance non précédés de certains caractères avec des expressions régulières
En Java, les expressions régulières offrent de puissantes capacités de correspondance de modèles. Une tâche spécifique consiste à faire correspondre un modèle uniquement lorsqu'il n'est pas précédé de caractères spécifiés.
Pour y parvenir, des recherches négatives peuvent être utilisées. Les recherches négatives utilisent la syntaxe (?
Exemple :
Considérez la chaîne :
String s = "foobar barbar beachbar crowbar bar ";
Pour faire correspondre "bar" uniquement lorsqu'il n'est pas précédé de "foo", utilisez ce qui suit expression régulière :
\w*(?<!foo)bar
Voici comment cela fonctionne :
Sortie :
barbar beachbar crowbar bar
Remarque supplémentaire :
Pour capturer des caractères avant « bar » (par exemple, « plage »), ajoutez w* avant de capturer "bar":
\w*(?<!foo)\w*bar
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!