返回课程

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"