Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/374.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 为什么这个正则表达式不起作用?_Javascript_Regex - Fatal编程技术网

Javascript 为什么这个正则表达式不起作用?

Javascript 为什么这个正则表达式不起作用?,javascript,regex,Javascript,Regex,我正在尝试使用一个类似于下面地址的正则表达式模式,但是我无法让测试方法返回true,我在这里做错了什么 let reg=/[0-9]{3}\b[a-z]{1}\b\d{2}[a-z]{2}\b[a-z]{2}\b[a-z}{6}\b[a-z]{10}\b[0-9]{5}/; let fakeAddress="925 s 10th st tacoma washington 98405"; reg.test(fakeAddress); 字母和数字之间以

我正在尝试使用一个类似于下面地址的正则表达式模式,但是我无法让测试方法返回true,我在这里做错了什么

       let reg=/[0-9]{3}\b[a-z]{1}\b\d{2}[a-z]{2}\b[a-z]{2}\b[a-z}{6}\b[a-z]{10}\b[0-9]{5}/;

       let fakeAddress="925 s 10th st tacoma washington 98405";
        reg.test(fakeAddress);
字母和数字之间以及数字和字母之间没有空格,您希望在它们之间匹配空格。请记住,
\b
是一个单词边界,它是一个零宽度断言,不消耗任何字符。因此,您需要将所有
\b
替换为
\s+
(1个或多个空格字符)。而且,
[a-z}
是一个打字错误。它应该是
[a-z]

使用


请看

字母和数字之间没有单词边界。我认为您需要将所有的
\b
替换为
\s+
。此外,
[a-z}
很可能是
[a-z]
。请看,在“tacoma”测试中,您有一个卷曲的括号,而不是括号
/\d{3}\s+[a-z]\s+\d{2}[a-z]{2}\s+[a-z]{2}\s+[a-z]{6}\s+[a-z]{10}\s+[0-9]{5}/