我希望将所有字词与\w
匹配,并排除某些特定字词和数字。
但是我想用这个(?!"\w+")
之类的东西排除双引号和单引号之间的单词,但似乎不起作用。
我该怎么办?这是我正在使用的
/(?!return|if|floor|else|elseif|NULL|null|pow|function|\d+)\b(\w+)/
答案 0 :(得分:0)
您可以使用PCRE中预测的(*SKIP)(*F)
匹配并跳过某些子字符串,如下所示:
/(['"])\w+\1(*SKIP)(*F)|\b(?!return|elseif|else|if|floor|NULL|pow|function|\d+)\w+/i
(['"])
匹配单引号或双引号,并在第1组\w+
匹配一个单词\1
反对第1组,以确保我们的结束报价与第1组相同(*SKIP)(*F)
将跳过此匹配