我对这个小的JavaScript代码有些麻烦:
var text="Z Test Yeah ! Z";
// With literal syntax, it returns true: good!
alert(/(Z[\s\S]*?Z)/g.test(text));
// But not with the RegExp object O_o
var reg=new RegExp('Z[\s\S]*?Z','g');
alert(reg.test(text));
Run Code Online (Sandbox Code Playgroud)
我不明白为什么文字语法和RegExp对象没有给我相同的结果...问题是我必须使用RegExp对象,因为我稍后会有一些变量.
有任何想法吗?
提前致谢 :)
zzz*_*Bov 21
您需要\在字符串文字中加倍转义字符,这就是通常首选正则表达式文字的原因.
尝试:
'Z[\\s\\S]*?Z'
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
5462 次 |
| 最近记录: |