gpt4 book ai didi

regex - 使用正则表达式的 Angular 模式验证

转载 作者:搜寻专家 更新时间:2023-10-30 21:17:18 27 4
gpt4 key购买 nike

我需要做一个密码模式验证器

密码应该是:

  • 1个大写字母
  • 1个小写字母
  • 一个数字
  • 最小长度为 8。

我发现了这个正则表达式模式:

Validators.pattern('/^(?=.*[A-Za-z])(?=.*\d)[A-Za-z\d!$%@#£€*?&]')

然而,验证器总是声称我的输入无效

errors:    
pattern:
actualValue: "Test1234"
requiredPattern: "^/^(?=.*[A-Za-z])(?=.*d)[A-Za-zd!$%@#£€*?&]$"

根据 https://regex101.com/r/AfAdKp/1该值应该是有效的。

编辑:澄清一下,Test1234 应该可以工作

最佳答案

您当前的正则表达式存在多个问题:

  1. 你的正则表达式没有字符类的量词
  2. Validators.pattern 不需要定界符,但你在开始时加了一个
  3. 你应该加倍转义标记。

你需要的是:

Validators.pattern('^(?=[^A-Z]*[A-Z])(?=[^a-z]*[a-z])(?=\\D*\\d)[A-Za-z\\d!$%@#£€*?&]{8,}$');

参见 live demo here

关于regex - 使用正则表达式的 Angular 模式验证,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51046044/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com