gpt4 book ai didi

javascript - 使用 Jquery 检查大写/小写/数字

转载 作者:技术小花猫 更新时间:2023-10-29 11:47:52 24 4
gpt4 key购买 nike

要么我在这里真的很迟钝,要么只是缺乏 sleep ,但为什么这不起作用?如果我使用“或”运算符,它适用于每个单独的测试,但一旦将其更改为“和”运算符,它就会停止工作。

我正在尝试测试表单的密码输入,看它是否包含小写、大写和至少 1 个符号。我在这方面遇到了很多麻烦,所以帮助会很可爱,这是我的代码。

var upperCase= new RegExp('[^A-Z]');
var lowerCase= new RegExp('[^a-z]');
var numbers = new RegExp('[^0-9]');

if(!$(this).val().match(upperCase) && !$(this).val().match(lowerCase) && !$(this).val().match(numbers))
{
$("#passwordErrorMsg").html("Your password must be between 6 and 20 characters. It must contain a mixture of upper and lower case letters, and at least one number or symbol.");
}
else
{
$("#passwordErrorMsg").html("OK")
}

最佳答案

您所有的正则表达式都在搜索您提供的范围内的所有内容。因此,[^A-Z] 会查找 A-Z 以外的任何内容。

你也在否定每场比赛。

您可以尝试通过删除 ^ 来修改您的正则表达式定义,然后反转您的逻辑。所以,

var upperCase= new RegExp('[A-Z]');
var lowerCase= new RegExp('[a-z]');
var numbers = new RegExp('[0-9]');

if($(this).val().match(upperCase) && $(this).val().match(lowerCase) && $(this).val().match(numbers))
{
$("#passwordErrorMsg").html("OK")

}
else
{
$("#passwordErrorMsg").html("Your password must be between 6 and 20 characters. It must contain a mixture of upper and lower case letters, and at least one number or symbol.");
}

这甚至可能更直观地阅读?

关于javascript - 使用 Jquery 检查大写/小写/数字,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12763974/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com