我正在尝试使用正则表达式验证js中的表单,但我遇到了一个问题,我无法成功google。
当我在js中创建任何RegExp时,例如使用/(.)*/
,测试函数返回false,无论我测试它...在php和regex在线编辑器中它工作正常。
我试图谷歌,但没有任何成功,似乎每个人都在使用:
var regexp = /expression/
我的代码:
var reg = new RegExp("/(.)+/", "g");
console.log("Regexp:" + reg.test("a"));
另外我被告知php中的正则表达式应该与js中的正则表达式兼容...
答案 0 :(得分:4)
当您使用RegExp
对象时,不应在定义中添加/
符号。只需使用var reg = new RegExp("(.)+", "g");
答案 1 :(得分:4)
您的语法不正确。您需要删除引号,或删除斜杠。 See the documentation here.
var reg = new RegExp(/(.)+/, "g");
console.log("Regexp:" + reg.test("a"));

答案 2 :(得分:0)
JS和PHP Regex之间的主要区别是: javascript:/ [a-z] + / php:' / [a-z] + /'
只需在正则表达式的每一端引用单引号。