retour au cours

Java[^script]

Considérons l’expression rationnelle /Java[^script]/.

Trouve-t-elle quelque chose dans la chaîne de caractères Java? Dans la chaîne JavaScript?

Réponses : non, oui.

  • Dans la chaîne de caractères Java, elle ne trouve aucune correspondance, parce que [^script] signifie “n’importe quel caractère sauf ceux cités”. L’expression rationnelle cherche donc "Java" suivi d’un autre symbole, mais arrivant en fin de chaîne, elle n’en trouve aucun.

    alert( "Java".match(/Java[^script]/) ); // null
  • Oui, car la partie [^script] correspond au caractère "S". Qui n’est pas l’un des caractères de script. Comme l’expression rationnelle est sensible à la casse (pas de marqueur i), elle considère bien "S" différemment de "s".

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