regresar a la lección

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 Java no 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á en script. Como el regexp distingue entre mayúsculas y minúsculas (sin flag i), procesa a "S" como un carácter diferente de "s".

    alert( "JavaScript".match(/Java[^script]/) ); // "JavaS"