Pregunta

¿Es posible hacer la negación cadena en expresiones regulares? Necesito hacer coincidir todas las cadenas que no contengan la cadena de "..". Sé que usted puede utilizar ^[^\.]*$ para que coincida con todas las cadenas que no contienen "." pero necesito para que coincida con más de un carácter. Sé que sólo podía igualar una que contiene ".." cadena y luego negar el valor de retorno del partido para lograr el mismo resultado, pero me preguntaba si era posible.

¿Fue útil?

Solución

Puede utilizar los símbolos de anticipación negativos:

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

Esto provoca la expresión de no coincidir si se puede encontrar una secuencia de dos períodos en cualquier lugar de la cadena.

Otros consejos

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

sólo igualará si no hay dos puntos consecutivos en cualquier lugar de la cadena.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top