正则表达式,最少10个字符,包括1个数字和1个大写字母

ARU*_*RUN 0 javascript regex jquery

我想使用jQuery.match()函数验证字符串.字符串必须包含

  1. 最少10个字符.
  2. 必须包含至少一个数字.
  3. 必须包含至少一个大写字母.

我怎样才能做到这一点?任何人都可以告诉我正则表达式吗?

我已经有了这个:

^(?=.{8,})(?=.*[a-z])(?=.*[A-Z])(?=.*[@#$%^&+=]).*$
Run Code Online (Sandbox Code Playgroud)

但它只是这样验证,允许至少一个特殊字符,一个大写,一个小写(以任何顺序).

Roh*_*ain 5

它并不严格符合长度限制,因为您没有正确完成.第一个预测 - (?=.{8,})只是测试最小长度的字符串8.请记住,因为环视是0长度断言,所以后面的前瞻.{8,0}不会消耗任何字符.

实际上,您可以删除第一个前瞻,并在匹配时简单地使用该量词.

试试这个正则表达式:

^(?=.*[A-Z])(?=.*[0-9]).{10,}$
Run Code Online (Sandbox Code Playgroud)

分手:

^
(?=.*[A-Z])  # At least an uppercase alphabet
(?=.*[0-9])  # At least a numeral
.{10,}       # Any character 10 or more times 
$
Run Code Online (Sandbox Code Playgroud)