我认为它与使用变量有关,当我在线测试时,我不使用变量而且它有效。我没有使用太多的正则表达式,所以我也可以做一些愚蠢的事情。
let home = 'testhome';
let currentHome = 'testhome (8)';
let re = new RegExp(home + ' \(\d+\)');
if (currentHome.match(re)) {
//no match
} else {
// this is the code executed
}
任何帮助表示赞赏。 currentHome
的括号中可能有多个数字。
答案 0 :(得分:0)
使用RegExp构造函数时,您应该转义转义字符本身,以便形成正确的reg表达式。
let re = new RegExp(home + ' \\(\\d+\\)');