hacer coincidir una línea que no contiene texto específico con expresiones regulares
-
22-07-2019 - |
Pregunta
Quiero hacer lo siguiente con expresiones regulares pero no estoy seguro de cómo hacerlo. Quiero que coincida con one two
cuando one two
es el comienzo de la línea a menos que la cadena contenga three
en cualquier lugar después de one two
.
Solución
Necesita una afirmación negativa anticipada - algo así:
/^one two(?!.*three)/m
Aquí hay un tutorial sobre aserciones anticipadas / lookbehind
Nota: He agregado el modificador 'm' para que ^ coincida con el inicio de una línea en lugar del inicio de toda la cadena.
Otros consejos
^one two(?!.*three)
Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow