私はパスワードバリデーターを作ろうとしています。少なくとも1つの文字、少なくとも1つの数字、および少なくとも1つの英数字以外の文字を含むパスワードのみを許可します。
私は以下が機能します:
function passwordValidate(password, password_c, msg)
{
if (notEmpty(password, "Enter a password"))
{
if (password.value === password_c.value)
{
if(/\W/.test(password.value))
{
if (/\d/.test(password.value) && /[a-zA-Z]/.test(password.value))
{
return true;
} else {
alert(msg);
}
} else {
alert("Must have a special character in your password");
}
} else {
alert("Passwords don't match");
}
}
return false;
}
最初はpassword.value.match("\W|_")
問題の原因だった「」があったので「/\W/.test(password.value)
」に変更しました。これを1つの正規表現に組み合わせる方法を知っている人はいますか?