我尝试匹配来自网址的变量。如果我在match方法中直接使用表达式,这可以正常工作。但是,如果表达式在字符串中,我将无法使其工作。
var match ='/(page_art_list = \ d +)/';
匹配包含值..
var pattern = "/("+paramName+"=\d+)/";
var match = this.href.match(pattern);
匹配为空
我已经仔细检查了两个示例产生完全相同的字符串。
有什么想法吗?
祝你好运。 AsbjørnMorell
答案 0 :(得分:2)
/something/
语法适用于regexp文字。对于字符串,请使用RegExp
构造函数:
var pattern = new RegExp('(' + paramName + '=\\d+)');
请注意双反斜杠\\
。这是因为在字符串中,\
是一个转义字符,所以你需要两个代表一个正则表达式反斜杠。