online - regex java ejemplo
Negando un conjunto de palabras a través de regex java (3)
No es tan simple. Si desea negar una palabra, debe dividirla en letras y negar cada letra.
entonces negar
/svn/
tu tienes que escribir
/[^s][^v][^n]/
Así que lo que quieras filtrar se convertirá en expresiones regulares realmente feas y creo que es mejor usar esta expresión regular
/svn|cvs|nvs|mvc/
y cuando pruebes tu cadena contra ella, solo niega el resultado.
En JS esto se vería menos como eso:
!/svn|cvs|nvs|mvc/.test("this is your test string");
Me gustaría negar un conjunto de palabras utilizando expresiones regulares de Java.
Digamos que quiero negar cvs
, svn
, nvs
, nvs
. Escribí una expresión regular que es ^[(svn|cvs|nvs|mvc)]
.
Algunos cómo eso parece no estar funcionando.
Prueba esto:
^(?!.*(svn|cvs|nvs|mvc)).*$
esto coincidirá con el texto si no contiene uno de svn, cvs, nvs o mvc.
Esta es una pregunta similar: C # Regex para que coincida con una cadena que no contiene una cadena determinada?
Su expresión regular está mal. Entre corchetes, puede poner caracteres para requerir o ignorar. Si no encuentra ^(svn|cvs|nvs|mvc)$
, está bien.