使用regexp验证值

时间:2015-05-20 13:36:51

标签: jquery regex

我没有正则表达式的经验,但我需要使用jquery验证一些值。经过研究,我发现了一些解决方案,并且我已经编写了一个脚本。

我需要实施以下规则:

字符串应包含至少一个字母(大写或小写),一个数字,一个特殊字符,长度应在5到10之间。

$('form').submit(function(){
                var value = $('#someValue');
                if (!/^(?=.*[a-z])(?=.*[A-Z])(?=.*\d)(?=.*(_|[^\w])).{5,10}+$/.test(value)) {
                    alert('validation error');
                    return false;
                }
            })

我不知道我是对还是错,需要一些来自大师的建议=)

1 个答案:

答案 0 :(得分:1)

您需要在+之后删除.{5,10}并使用:

/^(?=.*[a-z])(?=.*[A-Z])(?=.*\d)(?=.*[_\W]).{5,10}$/

否则.{5,10}+会导致Javascript出错,因为JS正则表达式中没有占有量词。