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 descript
. Comme l’expression rationnelle est sensible à la casse (pas de marqueuri
), elle considère bien"S"
différemment de"s"
.alert( "JavaScript".match(/Java[^script]/) ); // "JavaS"