Java[^script]
Abbiamo una regexp /Java[^script]/
.
Cosa corrisponde nella stringa Java
? E nella stringa JavaScript
?
Risposte: no, sì.
-
Nello script
Java
non c’è corrispondenza, dato che per[^script]
si intende “qualunque carattere eccetto quelli dati”. Quindi la regexp cerca"Java"
seguito da uno di tali caratteri, ma c’è la fine della stringa, non ci sono caratteri dopo di esso.alert( "Java".match(/Java[^script]/) ); // null
-
Sì, poiché
[^script]
trova il carattere"S"
che non è uno discript
. Considerato che la regexp fa distinzione tra maiuscole e minuscole (non c’è il flagi
), tratta"S"
come un carattere differente da"s"
.alert( "JavaScript".match(/Java[^script]/) ); // "JavaS"