jQuery验证方法字母,数字和特殊字符

时间:2018-08-20 19:37:21

标签: jquery regex validation

我正在使用jquery validate验证我的密码字段。 我想要什么:

1)密码必须至少包含一个大写字母

2)密码必须至少包含一个小写字母

3)密码必须至少包含一位数字

4)和仅允许特殊字符(!@#$%&*)

这是我尝试过的方法,但是即使我输入一个大写字母和一个数字,它也正在验证:

$.validator.addMethod("letters_numbers_special", function(value, element) {
    return this.optional(element) || /^(?:[a-zA-Z]|[a-zA-Z])[a-z0-9#$@!]+$/i.test(value);
  //(?=.*[a-zA-Z\d].*)[a-zA-Z\d!@#$%&*]
}, "");

1 个答案:

答案 0 :(得分:2)

在以下两种模式中,先行确保字符串中至少包含一个小写字母,一个大写字母和一个数字。

  1. 如果不需要但允许使用特殊字符,则可以使用以下模式。

marker

Try it here

比赛

^(?=.*[A-Z])(?=.*[a-z])(?=.*[0-9])[a-zA-Z0-9!@#$%&*]+$

不匹配

Gpa1
abc01A

  1. 如果您还需要至少一个特殊字符,则可以使用以下模式:

donotmatchME! apple2000@

Try it here

比赛

^(?=.*[A-Z])(?=.*[a-z])(?=.*[0-9])(?=.*[!@#$%&*])[a-zA-Z0-9!@#$%&*]+$

不匹配

Matchme2018!
regexIScool1!