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"