Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/470.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript正则表达式:使用变量创建新的lookbehind正则表达式?_Javascript_Regex_Regex Lookarounds - Fatal编程技术网

Javascript正则表达式:使用变量创建新的lookbehind正则表达式?

Javascript正则表达式:使用变量创建新的lookbehind正则表达式?,javascript,regex,regex-lookarounds,Javascript,Regex,Regex Lookarounds,我想用JavaScript创建一个带有变量的新的RegExp。但是当我想创建一个新的lookaround RegExp时遇到了麻烦: var xvar = "_on"; var regex = new RegExp("(?<!" + xvar + ")(.gif|.jpg|.png)$"); #=> SyntaxError: Invalid regular expression: /(?<!_on)(.gif|.jpg|.png)$/: Invalid group var x

我想用JavaScript创建一个带有变量的新的
RegExp
。但是当我想创建一个新的
lookaround RegExp
时遇到了麻烦:

var xvar = "_on";
var regex = new RegExp("(?<!" + xvar + ")(.gif|.jpg|.png)$");
#=> SyntaxError: Invalid regular expression: /(?<!_on)(.gif|.jpg|.png)$/: Invalid group
var xvar=“_on”;

var regex=new RegExp(“(?我不知道您的
RegExp
目标,但量词
(…)
在这种情况下会导致错误。例如,使用非捕获括号
(?:…)


var regex=new RegExp((?:Javascript不支持lookback。一种方法是反转字符串…取决于您正在做什么。最终目标是什么?为什么不能使用正常的非捕获组,如
“(?:“+xvar+”(.gif |.jpg |.png)$”
?他没有试图匹配
,而是试图使用JavaScript正则表达式中不支持的反向查找。
/\(\?<!_on\)\(\.gif\|\.jpg\|\.png\)\$/
var regex = new RegExp("(?:<!" + xvar + ")(?:.gif|.jpg|.png)$");