我正在尝试使用变量创建一个正则表达式,因为我不知道具体的单词
所以在正确放置变量后我得到了这段代码
var newregxobj="(?=(?<!kbWR"))(?=(?<!none"))>[0-9\.]+<";
我使用
制作了REGEXPvar re = new RegExp(newregxobj,"g");
当我尝试使用它来显示错误时:
SyntaxError:无效的量词
我试图逃避几乎所有的量词,但没有任何反应。
请帮忙。
答案 0 :(得分:0)
我认为你需要在中间避开那个双引号:
"(?=(?<!kbWR\"))(?=(?<!none\"))>[0-9\.]+<";
答案 1 :(得分:0)
您需要使用"
转义\
,以使其\"
。
另一方面,您不必在[...]
内部逃避句号。
我还建议在积极前瞻(?<!...)
(?=...)
kbWR\")(?<!none\")>[0-9.]+<
因为您使用Javascript并且不支持lookbehind,所以您必须使用替代解决方案
var re = new RegExp("(?!kbWR\"|none\").{5}>[0-9.]+<", "g");