如何在Angular2中验证电子邮件?

如何在Angular2中验证电子邮件?,angular,angular2-forms,angular2-validators,Angular,Angular2 Forms,Angular2 Validators,我正在使用FormGroup、FormBuilder和Validators类在Angular2应用程序中验证表单 以下是我如何定义电子邮件和密码验证所需的验证规则:- export class LoginComponent implements OnInit { loginFormGroup:FormGroup; adminLoginmodel = new Admin('', '', '', 'Emailsss','Passwordsss'); constructo

我正在使用FormGroupFormBuilderValidators类在Angular2应用程序中验证表单

以下是我如何定义电子邮件和密码验证所需的验证规则:-

export class LoginComponent implements OnInit {
    loginFormGroup:FormGroup;
    adminLoginmodel = new Admin('', '', '', 'Emailsss','Passwordsss');  

    constructor(
       private route: ActivatedRoute,
       private router: Router,
       private _adminLogin: AdminLoginService,
       fb: FormBuilder
    ){
         this.loginFormGroup = fb.group({
            'email' : [null, Validators.required],
            'password': [null, Validators.required]
         });
    }
}
如何验证给定字符串是否为有效电子邮件

注意:

有人刚刚试图将这个问题标记为这个问题的重复


我的问题特别询问FormGroup和FormBuilder的实现,这甚至在问题的开头就已经说明了。这是一个很好的例子来说明一些好的和有效的问题是如何被不公平地评判的。希望版主和其他所谓的“stackoverflow社区构建者”不要编辑此问题以删除此部分。

您必须将模式验证程序与正则表达式一起使用:

this.loginFormGroup = fb.group({
    'email' : [null, Validators.pattern('^(([^<>()\[\]\\.,;:\s@"]+(\.[^<>()\[\]\\.,;:\s@"]+)*)|(".+"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$')],
    'password': [null, Validators.required]
});
this.loginFormGroup=fb.group({
“email”:[null,Validators.pattern(“^([^()\[\]\\,;:\s@”]+(\.[^()\[\]\,;:\s@+)*)(“+”)((\[[0-9]{1,3}.[0-9]{1,3}.[0-9]{1,3}.[0-9]{1,3}.[0-9]{1,3}.[1,3}.]}.[1,3}.],
“密码”:[空,验证器。必需]
});
将多个验证器组合到一个函数中,该函数返回单个错误映射的并集


可能重复的电子邮件,如
tuhindey@gmail.com
未使用您的脚本检测到有效邮件。请构建您自己的正则表达式,这是验证模式的示例!这是我需要更多的实际答案。它展示了如何使用多个验证规则!我正要发布一个关于如何在单个服务器上拥有多个验证规则的问题。Validators.compose完成了这个任务。非常感谢。此外,Validators.email还检查电子邮件是否有效。因此,我们不需要preg匹配模式。我在发布另一个问题。希望你也能在这方面帮助我。:)还有一个问题。
this.loginFormGroup = fb.group({
  'email' : [null, Validators.compose([Validators.required, Validators.email])],
  'password': [null, Validators.required]
});