离子2:表单验证器(正则表达式)



我尝试在表单上使用验证器作为电话号码。我尝试这种方式:

<input *ngIf="fieldForm.value.type == 'phone'" pattern="^([0-9]{2}s?){5}$" type="text" class="form-control" formControlName="field" [(ngModel)]="value">

我想接受具有此模式的两个数字之间的空格或不空格:

^([0-9]{2}s?){5}$

例:

1- 01 01 01 01 01
2- 0101010101
3- 01 0101 0101

可以接受。

问题:在我的示例中,我的模式仅接受第二种形式。(0101010101)我不明白,因为我在 http://regexr.com/中尝试了我的模式,它适用于我的所有示例。

一个想法 ?

PS :我想验证一个法国电话号码。

Regex 是一头邪恶的野兽。幸运的是,我在 regexlib.com 上找到了这个不错的小例子

这似乎是您正在寻找的。至于为什么 Angular 与您的空格不匹配,可能是您必须对空格选择器进行双重转义,因此它看起来像:

^([0-9]{2}\s?){5}$

但这只是一个猜测。

最新更新