如何将此Javascript正则表达式更改为不区分大小写?

时间:2010-10-19 20:53:51

标签: javascript regex

我在下面有这个正则表达式来验证安全问题,其中一些人必须输入两次答案。我的客户希望答案不区分大小写。因此,如果有人在切斯特打字并且在第二个字段中他们输入切斯特,那么它将匹配。我可以对此表达式做些什么来实现这一目标:

/^(\w|[a-zA-Z\d\s\.\@\-\?\,\&\/\_\#\+\(\)\""\'']){3,50}$/

3 个答案:

答案 0 :(得分:5)

只需附加i修饰符:

/^(\w|[a-zA-Z\d\s\.\@\-\?\,\&\/\_\#\+\(\)\""\'']){3,50}$/i

详细了解i修饰符和其他here的内容。

答案 1 :(得分:2)

您的正则表达式已经不区分大小写......并且是多余的。这就是重点。你想要比较两个领域,没有任何正则表达式。这是你的不区分大小写的字段比较函数:

function fieldsMatch(input1, input2)
{
    return input1.value.toLowerCase() == input2.value.toLowerCase();
}

答案 2 :(得分:0)

// You can do it with a regular expression, if you insist.

function fieldsMatch(input1, input2){
    return /^([a-z\d\s\/.@?, &_#+()""''-]+)\1$/i.test(input1+ input2);
}

fieldsMatch('bone','BONE')


/*  returned value: (Boolean)
true
*/
相关问题