正则表达式与"1 1"JavaScript中的数字不匹配

cam*_*nch 0 javascript regex

这可能是一个愚蠢的错误,但我无法弄清楚为什么这不起作用

var patt = new RegExp("\s[A-Za-z0-9]");
var filtering = patt.test("1 1");
console.log(filtering);
Run Code Online (Sandbox Code Playgroud)

我弄错了filtering,但从我的理解filtering应该是真的

Ric*_*ock 5

这个:

var patt = new RegExp("\s[A-Za-z0-9]");
Run Code Online (Sandbox Code Playgroud)

...创建以下正则表达式:

/s[A-Za-z0-9]/
Run Code Online (Sandbox Code Playgroud)

请注意,\之前没有反斜杠()s,因为必须转义字符串表达式中的反斜杠(使用另一个反斜杠).

解决这个问题,你会得到true预期的:

var patt = new RegExp("\\s[A-Za-z0-9]");
var filtering = patt.test("1 1");
console.log(filtering);
Run Code Online (Sandbox Code Playgroud)