gpt4 book ai didi

regex - 如何使用 Angular 5 Validator Pattern 验证密码强度

转载 作者:太空狗 更新时间:2023-10-29 16:56:01 25 4
gpt4 key购买 nike

我需要验证密码输入表单字段的强度。要求是:

  • 至少一个小写字符
  • 至少一个大写字符
  • 至少一个号码
    (无论顺序)

到目前为止,我搜索和尝试的内容如下所示,结果不一致。

好像是验证正则表达式验证的顺序。
我需要的是检查是否至少存在一种字符“类型”。

import { Component } from '@angular/core';
import { FormBuilder, FormGroup, Validators } from '@angular/forms';

@Component({
selector: 'signup',
templateUrl: './signup.component.html',
styleUrls: ['./signup.component.scss']
})
export class SignupComponent {

form: FormGroup;

constructor() {
this.init();
}

init() {
this.form = this.fb.group({
name: ['', [Validators.required]],
email: ['', [Validators.required, Validators.email],
password: ['', [
Validators.required,
Validators.pattern('((?=.*\d)(?=.*[a-z])(?=.*[A-Z]).{8,30})')
]]
});
}
}

最佳答案

我用 Angular 的内置模式验证器对此进行了尝试,并能够提出以下检查:

  • 长度至少为 8 个字符
  • 小写字母
  • 大写字母
  • 数字
  • 特殊字符

    password: [
    '',
    [
    Validators.required,
    Validators.pattern('(?=.*[a-z])(?=.*[A-Z])(?=.*[0-9])(?=.*[$@$!%*?&])[A-Za-z\d$@$!%*?&].{8,}')
    ]
    ]

我要补充一点,我绝不是正则表达式专家。对于与 OP 密切相关的案例,这对我来说很简单。也许它会帮助别人。 Mozilla 的文档对解决这个问题有很大帮助,特别是 Writing a regular expression pattern部分。

关于regex - 如何使用 Angular 5 Validator Pattern 验证密码强度,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48350506/

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