Javascript 如何使用正则表达式验证密码是否允许至少4位数字和1个字符,而不允许使用特殊字符?
如何使用正则表达式验证密码是否允许至少4位数字和1个字符,而不允许使用特殊字符 密码有效格式:1234a或6778B或67A89(不含@$%^&*/等特殊字符) 最大密码长度:5个字符 有人能帮我怎么做吗 谢谢。您想要的图案Javascript 如何使用正则表达式验证密码是否允许至少4位数字和1个字符,而不允许使用特殊字符?,javascript,regex,Javascript,Regex,如何使用正则表达式验证密码是否允许至少4位数字和1个字符,而不允许使用特殊字符 密码有效格式:1234a或6778B或67A89(不含@$%^&*/等特殊字符) 最大密码长度:5个字符 有人能帮我怎么做吗 谢谢。您想要的图案 任意数量 然后是一封信 任意数量 所有附加限制不得超过5个字符 模式可能是这样的:(使用正向前瞻检查数字-字母-数字组合,然后检查5个字符以检查长度) 这将允许您输入四个数字(0-9)和一个字母(a-z和a-z)示例1234a。。。。希望这就是您想要的答案。此正则表达式
- 任意数量
- 然后是一封信
- 任意数量
- 所有附加限制不得超过5个字符
这将允许您输入四个数字(0-9)和一个字母(a-z和a-z)示例1234a。。。。希望这就是您想要的答案。此正则表达式应该可以:
^(?=(.*?[0-9]){4})(?=.*?[a-zA-Z])[0-9A-Za-z]{5}$
由于我们只允许在密码中使用[0-9A-Za-z]{5}
符号,因此无需在此处检查特殊字符
在线演示:
说明:
-向前看以检查是否存在至少4个数字(?=(.*?[0-9]){4}
-提前检查是否存在至少1个字母(?=.*[a-zA-Z])
只允许字符类中的最大长度为5的符号[0-9A-Za-z]{5}
- 下面是用于执行所需检查的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!");
}
您是否尝试自己实施此功能?你到底哪里有问题?目前,这篇文章似乎要求我们为你做这项工作。。。这只是一个规格列表。以下哪项是有效的1234a 12345 1234#可以让你输入4个DIDGET和1个字母,这是你要求的,这是我给的,谢谢你的否决票。注意,我不是问这个问题的用户。哦,我现在明白了。。我的错误我不相信Javascript支持模式修饰符谢谢@RonRosenfeld,我删除了
I
我认为这不对。第一个前瞻将不检查是否至少有4个数字,但只接受4个数字。所以67A89将无法与example@fejese:您可能不理解正则表达式,或者没有检查链接的演示。如果您确实检查了链接的演示,它确实匹配了有效的67A89
。@ahalya,我的错,我漏掉了一个括号。这个问题与@anubhava的问题相同:不接受像这样的密码67A89@ahalya如果我的回答对你有帮助,请接受。
^(?=(.*?[0-9]){4})(?=.*?[a-zA-Z])[0-9A-Za-z]{5}$
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!");
}