我正在尝试在反应式表单验证中验证电话号码。但 reg 表达式无法正常工作。出现如下错误:
ERROR Error: Invalid regular expression: /^/^+([0-9]{1,3})?[- ]?(d{3})?[- ]?(d{3})[- ]?(d{4,6})( ext d{4})?$/$/: Nothing to repeat
演示:https://stackblitz.com/edit/angular-g7vtuj-onr6bz?file=app%2Fselect-multiple-example.ts
代码:
this.myForm = formBuilder.group({
mob: [
'',
[
Validators.required,
Validators.pattern(
'/^+([0-9]{1,3})?[- ]?(d{3})?[- ]?(d{3})[- ]?(d{4,6})( ext d{4})?$/'
),
],
],
});
您应该删除正则表达式模式开头和结尾处多余的正斜杠 /。 正则表达式也有错字;应使用 \d 代替 d 进行数字匹配。
希望有帮助。