如何在javascript中测试模式regexpr

时间:2018-05-17 14:07:42

标签: javascript

在javascript中我有一个包含模式'/^\d{7,15}$/'的字符串,我会测试字符串str1

如何使用此字符串'/^\d{7,15}$/' ???



var re = '/^\d{7,15}$/';
var str1 = '12345678'; //should match!

// none of the below methods is working to me

var m1 = str1.match(re); 
console.log(m1); //null

var regex1 = new RegExp(re);
var t1 = regex1.test(str1); 
console.log(t1); //false




1 个答案:

答案 0 :(得分:1)

您需要在字符串文字中转义反斜杠\



var re = '^\\d{7,15}$';
var str1 = '12345678'; //should match!
var regex1 = new RegExp(re);
var t1 = regex1.test(str1);

console.log(t1);




我还删除了表达式周围的斜杠/,因为它们不是必需的。正如Paulpro在评论中提到的那样,如果您不控制输入字符串,则可以使用str1.slice(1, -1)将其删除。