包含至少 8 个字符、1 个数字、1 个大写和 1 个小写的密码的 javascript 正则表达式 [英] javascript regex for password containing at least 8 characters, 1 number, 1 upper and 1 lowercase

查看:24
本文介绍了包含至少 8 个字符、1 个数字、1 个大写和 1 个小写的密码的 javascript 正则表达式的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我正在尝试编写一个正则表达式来验证必须满足以下条件的密码:

I am trying to write a regular expression to validate a password which must meet the following criteria:

  • 至少包含 8 个字符
  • 至少包含 1 个数字
  • 至少包含 1 个小写字符 (a-z)
  • 包含至少 1 个大写字符 (A-Z)
  • 仅包含 0-9a-zA-Z

我尝试了以下方法,但似乎不起作用.

I tried the following but it doesn't seem to work.

http://jsfiddle.net/many_tentacles/Hzuc9/

<input type='button' value='click' class='buttonClick' />
<input type='text' />
<div></div>

还有……

$(".buttonClick").click(function () {

    if ($("input[type=text]").filter(function () {
        return this.value.match(/^(?=.*[0-9])(?=.*[a-z])(?=.*[A-Z])([a-zA-Z0-9]{8})$/);
    })) {
        $("div").text("pass");
    } else {
        $("div").text("fail");
    }

});

有什么想法吗?

推荐答案

您的正则表达式应如下所示:

Your regular expression should look like:

/^(?=.*d)(?=.*[a-z])(?=.*[A-Z])[0-9a-zA-Z]{8,}$/

解释如下:

/^
  (?=.*d)          // should contain at least one digit
  (?=.*[a-z])       // should contain at least one lower case
  (?=.*[A-Z])       // should contain at least one upper case
  [a-zA-Z0-9]{8,}   // should contain at least 8 from the mentioned characters
$/

这篇关于包含至少 8 个字符、1 个数字、1 个大写和 1 个小写的密码的 javascript 正则表达式的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
相关文章
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆