Java[^script]
У нас є регулярний вираз /Java[^script]/
.
Чи знайде він співпадіння у рядку Java
? А у рядку JavaScript
?
Відповідь: ні, так.
-
В скрипті
Java
немає співпадінь, оскільки[^script]
означає “пошук будь-яких символів окрім заданих”. Тож регулярний вираз шукає"Java"
за яким слідує один такий символ, але це кінець рядку і далі немає символів.alert( "Java".match(/Java[^script]/) ); // null
-
Так, оскільки частина патерну
[^script]
співпадає з символом"S"
. Його немає в перелікуscript
. Бо регулярний вираз розрізняє регістри букв (не вказаний прапорецьi
), то для нього"S"
та"s"
це різні символи.alert( "JavaScript".match(/Java[^script]/) ); // "JavaS"