我需要在我的应用程序中的一个表单字段上运行验证。为此,我正在使用ReactiveFormsModule
我的模式如下:
domainPattern = '^(((?!-))(xn--|_{1,1})?[a-z0-9-]{0,61}[a-z0-9]{1,1}\.)*(xn--)?([a-z0-9\-]{1,61}|[a-z0-9-]{1,30}\.[a-z]{2,})$';
我在我的模式验证器代码中使用上述模式,如下所示:
this.customerForm = this.formBuilder.group( {
name: [ '' ],
company: [ '' ],
email: [ '', [ Validators.required, Validators.email ] ],
domain: [ '', [ Validators.required, Validators.pattern( this.domainPattern ) ] ]
} );
对于email
,这是正常运行的标准。
但是对于自定义域,正则表达式对我不起作用。我使用了here中的正则表达式。
根据所审查的问题,似乎很难为所有有效域找到通用的域名正则表达式,但是我想介绍大多数基本情况。
当前模式显示:$#$#.com
,abcd
为有效域。
验证器是否具有任何类似于Validators.email
的域常量验证器?