Regex ReactJS中用于验证密码的正则表达式

Regex ReactJS中用于验证密码的正则表达式,regex,validation,reactjs,Regex,Validation,Reactjs,我们可以在reactJS中对密码验证执行regex模式检查吗 由于我是reactJS新手,我需要regex模式来验证密码 以下是验证密码的条件 a) 密码应包含一个大写字母 b) 它应该以特殊字符开头@或# c) 它不应该包含任何元音a、e、i、o、u字母 d) 它应该是字母数字的 e) 密码长度应介于范围8到14之间最简单的方法是分别检查所有规则 我为你写了一个函数: function password_validate(password) { var re = { '

我们可以在
reactJS
中对密码验证执行
regex
模式检查吗

由于我是
reactJS
新手,我需要
regex
模式来验证密码

以下是验证密码的条件

a) 密码应包含一个大写字母

b) 它应该以特殊字符开头
@
#

c) 它不应该包含任何元音
a、e、i、o、u
字母

d) 它应该是字母数字的


e) 密码长度应介于
范围8到14之间

最简单的方法是分别检查所有规则

我为你写了一个函数:

function password_validate(password) {
    var re = {
        'capital' : /[A-Z]/,
        'digit'   : /[0-9]/,
        'except'  : /[aeiou]/,
        'full'    : /^[@#][A-Za-z0-9]{7,13}$/
    };
    return re.capital .test(password) && 
           re.digit   .test(password) && 
          !re.except  .test(password) && 
           re.full    .test(password);
}
或一行中的相同功能:

function password_validate(p) {
    return /[A-Z]/.test(p) && /[0-9]/.test(p) && !/[aeiou]/.test(p) && /^[@#][A-Za-z0-9]{7,13}$/.test(p);
}

如果要一次检查所有规则,请尝试以下公式:

^([@#](?=[^aeiou]{7,13}$)(?=[[:alnum:]]{7,13}$)(?=.*[A-Z]{1,}.*$).+)$

此正则表达式将在以下情况下工作:

^[@#](?=.{7,13}$)(?=\w{7,13})(?=[^aeiou}{7,13})(?=.[A-Z])(?=.*\d)

解释

^[@#]
@

现在我们可以这样添加一些条件:

(?=条件)(?=条件)(?=条件)

这意味着“匹配条件,但之后在原始匹配点继续匹配。”

您可以添加任意数量的条件,这将是一个“and”

(?=.{7,13}$)
密码长度应介于8到14之间

(?=\w{7,13})
它应该是字母数字

(?=[^aeiou\u]{7,13})
它不应包含任何元音a、e、i、o、u字母或与
\w
匹配的下划线

(?=.[A-Z])
密码应包含大写字母

(?=.*\d)
它应该是字母数字的,所以应该包含一个数字


我不想尝试上述方法,因为我因个人工作而无法及时发送其他信息。同意@aryamcarthydo不向用户提供答案,因为用户没有努力解决问题,所以不是代码编写网站。@PedroLobito,这是你的个人立场还是网站上有一些监管规则?@PedroLobito,好的,这是一群人的个人立场,包括你。。。这不是官方立场。。。所以,请不要把它强加给我。。。