Java[^script]
Tenemos una regexp /Java[^script]/.
¿Coincide con algo en la cadena Java? ¿Y en la cadena JavaScript?
Respuestas: no, si.
-
En el script
Javano coincide con nada, porque[^script]significa “cualquier carácter excepto los dados”. Entonces, la expresión regular busca"Java"seguido de uno de esos símbolos, pero hay un final de cadena, sin símbolos posteriores.alert( "Java".match(/Java[^script]/) ); // null -
Sí, porque la sección
[^script]en parte coincide con el carácter"S". No está enscript. Como el regexp distingue entre mayúsculas y minúsculas (sin flagi), procesa a"S"como un carácter diferente de"s".alert( "JavaScript".match(/Java[^script]/) ); // "JavaS"