在JavaScript中,可以在正则表达式的中间使用(?=regex)
和(?!regex)
,还是必须在正则表达式的末尾使用它们?如果它们可以在中间使用,它的含义是什么?
答案 0 :(得分:3)
(?=…)
和(?!…)
(lookaheads)声明匹配后的字符串/与子正则表达式不匹配,而实际上没有使用它们。它们可以出现在任例如
^(\d)(?!\1)\d+$
匹配
12345
67890
但不是
11234
55678
有关详细信息,请参阅http://www.regular-expressions.info/lookaround.html。