如何使用正则表达式验证密码是否允许至少4个数字和1个没有特殊字符的字符?
密码有效格式:1234a或6778B或67A89(不含特殊字符,如@ $%^& * /)
最长密码长度:长5个字符
任何人都可以帮我解决这个问题吗?。
感谢。
答案 0 :(得分:2)
你想要的模式
模式可能是这样的:(使用正向前瞻来检查数字 - 字母 - 数字组合,然后检查5个字符以检查长度)
/^(?=[0-9]*[a-zA-Z][0-9]*$).{5}$/
答案 1 :(得分:1)
这个正则表达式应该有效:
^(?=(.*?[0-9]){4})(?=.*?[a-zA-Z])[0-9A-Za-z]{5}$
由于我们只允许密码中使用[0-9A-Za-z]{5}
符号,因此无需在此处检查特殊字符。
<强>解释强>
(?=(.*?[0-9]){4})
- 预测检查是否存在至少4个数字(?=.*?[a-zA-Z])
- 前瞻检查是否存在至少1个字母[0-9A-Za-z]{5}
仅允许字符类中的符号使用max length = 5 答案 2 :(得分:0)
^[0-9]{4}[A-Za-z]{1}$
这将允许您输入四个数字(0-9)和1个字母(a-z和A-Z)示例1234a ....希望这是您正在寻找的答案。
答案 3 :(得分:0)
以下是进行所需检查的javascript代码
var regex =^(?=(.*?[0-9]){4})(?=.*?[a-zA-Z])[0-9A-Za-z]{5}$;
var input = "1234B";
if(regex.test(input)) {
alert(matches[match]);
} else
{
alert("No matches found!");
}