Angular 角度形状组中的多个验证组

Angular 角度形状组中的多个验证组,angular,angular2-forms,Angular,Angular2 Forms,我想在表单中进行一些特定的验证,但我找不到一种优雅的方式来实现。假设我有一个字段,它可以满足几组有效的验证约束中的一组?我想要的密码的具体验证是: 必需的 最大长度256个字符 最小长度为10个字符 至少需要一个整数 至少需要一个符号 至少需要一个大写字母 或 必需的 最大长度256个字符 最小长度32个字符 我希望验证为同一字段接受这两个组中的任何一个。有没有一种优雅的方法来处理棱角形状 您可以这样设置验证。你也可以为它设定模式 数字、符号和字母 从中找到的模式我猜是您想要一个拥有所有

我想在表单中进行一些特定的验证,但我找不到一种优雅的方式来实现。假设我有一个字段,它可以满足几组有效的验证约束中的一组?我想要的密码的具体验证是:

  • 必需的
  • 最大长度256个字符
  • 最小长度为10个字符
  • 至少需要一个整数
  • 至少需要一个符号
  • 至少需要一个大写字母

  • 必需的
  • 最大长度256个字符
  • 最小长度32个字符
我希望验证为同一字段接受这两个组中的任何一个。有没有一种优雅的方法来处理棱角形状

您可以这样设置验证。你也可以为它设定模式 数字、符号和字母


中找到的模式我猜是您想要一个拥有所有验证的验证器,并且您可以插入和播放您想要的验证?如果是这种情况,您可以为验证器使用不同的类,然后在formbuilder中使用相同的函数调用
   this.userForm = this.formBuilder.group({
    password: ['', [Validators.required, Validators.maxLength(256)], Validators.minLength(10) , Validators.pattern('^(?=.*?[A-Z])(?=.*?[a-z])(?=.*?[0-9])(?=.*?[#?!@$%^&*-]).{10,}$')],
    });