regex-negation - regex only positive numbers - Expresión regular para coincidir con una línea que no contiene una palabra

regex only numbers / regex

Sé que es posible hacer coincidir una palabra y luego invertir las coincidencias con otras herramientas (por ejemplo, grep -v ). Sin embargo, ¿es posible hacer coincidir líneas que no contienen una palabra específica, por ejemplo , hede , usando una expresión regular?

hoho
hihi
haha
hede
grep "<Regex for 'doesn't contain hede'>" input

Resultado deseado:

hoho
hihi
haha

20 revs, 14 users 18%



Answer #1

con esto,se evita probar un lookahead en cada posición:

/^(?:[^h]+|h++(?!ede))*+$/

equivalente a (para .net):

^(?>(?:[^h]+|h+(?!ede))*)$

Respuesta antigua:

/^(?>[^h]+|h+(?!ede))*$/