【问题标题】:looking for a regular expression to validate a password, must be greater than 8 characters long and contain at least one special character寻找正则表达式来验证密码,长度必须大于 8 个字符并且至少包含一个特殊字符
【发布时间】:2016-11-21 05:33:52
【问题描述】:

想要验证密码,目前我有

var myRegularExpression = /(?=.*?[#?!@$%^&*-]).{8,}/ ;

我错过了什么吗?它可以包含任何内容,但它必须满足的唯一要求是至少 1 个特殊字符且大于 8 个字符

【问题讨论】:

标签: javascript regex node.js passwords


【解决方案1】:

使用这个 ^(?=.?[#?!@$%^&-])。{8,}$

可以查看详情here

【讨论】:

  • 效果很好,但将其更改为 {9,},因为大于 8 个字符的密码意味着至少 9
【解决方案2】:

你可以试试这个。

/(.{7,}(?=[#?!@$%^&*-])|(?=[#?!@$%^&*-]).{7,})/

【讨论】:

    【解决方案3】:

    可以使用此功能。传入一个密码字符串来测试它。如果超过 8 个字符,我将通过 RegEx 测试来测试是否有特殊字符。如果有特殊字符,则返回 true,如果没有,则返回“密码是……”文本。

    function passWrdTest(str){
        var myReg = /\[|\#|\?|\!|\@|\$|\%|\^|\&|\*|\-|\]/g;
        return str.length > 8 ? myReg.test(str) : 'Password is either not long enough or does not have a special character...';
    }
    

    【讨论】:

      猜你喜欢
      • 2015-01-18
      • 1970-01-01
      • 2021-09-08
      • 2023-01-19
      相关资源
      最近更新 更多