在RegExp中使用带有转义符的变量

Using variable with escape character in RegExp

本文关键字:转义 变量 RegExp      更新时间:2024-06-01

Hi我在JavaScript中有以下正则表达式:

var re=new RegExp("''''[(''''d{8})([,|;]''''s*''''d})*'''']","g")

当我将变量设置为等于第一个和最后一个括号(带有转义符)时,我从元素的属性中获得这些括号,并将这些变量传递给RegExp,如下所示:



HTML:

div id="myid"left="''''["right="'''']"/>

JavaScript:

bs=$("#myid");left=bs.attr('left');right=bs.attr("right");var re=new RegExp(left+"(''''d{8})([,|;]''''s*''''d{})*"+right,"g");

我收到错误消息:

Uncaught SyntaxError: Invalid regular expression: /''[('d{8})([,|;]'s*'d{8})*'']/: Unmatched ')' 

我在这里做错了什么?

感谢

您不需要escape您的escape登录html属性

这些仅在javascript的字符串中需要。

只需更换

''[

带有单个

'[

在您的属性中。