faire correspondre une ligne qui ne contient pas de texte spécifique avec des expressions régulières

StackOverflow https://stackoverflow.com/questions/436850

  •  22-07-2019
  •  | 
  •  

Question

Je veux faire ce qui suit avec des expressions régulières mais je ne sais pas comment le faire. Je veux qu'il corresponde à un deux lorsque un deux est le début de la ligne, sauf si la chaîne contient trois n'importe où après un deux .

Était-ce utile?

La solution

Vous avez besoin d'une assertion de lookahead négatif - quelque chose comme ceci:

/^one two(?!.*three)/m

Voici un didacticiel sur les assertions lookahead / lookbehind

Remarque: j'ai ajouté le modificateur 'm' afin que ^ corresponde au début d'une ligne plutôt qu'au début de la chaîne entière.

Autres conseils

^one two(?!.*three)
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top