Javascript:动态创建正则表达式

时间:2017-05-21 16:13:17

标签: javascript regex

我有这个密码正则表达式:

var PasswordRegex = /^(?=.*\d)(?=.*[a-z])(?=.*[A-Z])[0-9a-zA-Z!@#$&()\\-`.+,/\"]{8,}$/;

我现在想要从管理CMS

设置最小长度

所以我有这个

function CheckPassword(minLengh, Password) {
DynamicPasswordRegex = new RegExp("^(?=.*\d)(?=.*[a-z])(?=.*[A-Z])[0-9a-zA-Z!@#$&()\\-`.+,/\"]{" + minLengh + ",}$");

return DynamicPasswordRegex.test(Password);
}

由于某种原因,密码正常,返回false

1 个答案:

答案 0 :(得分:2)

您正在编写字符串文字,因此您的反斜杠被解析为字符串文字转义序列。

你需要将每个反斜杠转义为\\,以便正则表达式看到一个反斜杠。