tutorial regulares regular regexp probar online expresiones expresion espacio ejemplos blanco alfanumerico regex lookahead negative-lookahead negation

regexp - probar expresiones regulares



NegaciĆ³n de cadenas usando expresiones regulares (2)

¿Es posible hacer una negación de cadenas en expresiones regulares? Necesito hacer coincidir todas las cadenas que no contengan la cadena ".." . Sé que puedes usar ^[^/.]*$ Para unir todas las cadenas que no contengan "." pero necesito unir más de un personaje. Sé que podría hacer coincidir una cadena que contenga ".." y luego anular el valor de retorno de la coincidencia para lograr el mismo resultado, pero me pregunté si sería posible.


Puedes usar lookaheads negativos:

^(?!.*/./.).*$

Eso hace que la expresión no coincida si puede encontrar una secuencia de dos períodos en cualquier lugar de la cadena.


^(?:(?!/./.).)*$

solo coincidirá si no hay dos puntos consecutivos en ninguna parte de la cadena.