我希望new RegExp('\b\w{1,7}\b', "i").test('bc4rg6')
返回true,因为我想测试字符串“bc4rg6”是字母数字并且有1到7个字符。但是浏览器给出了错误。如何修复它以便我可以测试所述条件?感谢
答案 0 :(得分:0)
您需要转义字符串中的反斜杠,因为{}
是转义为退格符的转义序列。
\b

但如果正则表达式是常量,则不需要使用console.log(new RegExp('\\b\\w{1,7}\\b', "i").test('bc4rg6'));
,只需使用RegExp文字。
new RegExp

答案 1 :(得分:0)
RegExp
函数不接受字符串作为参数。
而是使用转义斜杠传递Regular Expression
模式以指示模式的开始和结束。
new RegExp(/\b\w{1,7}\b/, "i").test('bc4rg6');
您可以在Mozilla上阅读有关RegExp功能的更多信息。