是否可以修改模式验证器以包括删除输入字段中写入的空格?

Is it possible to modify a pattern Validator to include removing blank spaces written in an input field?

我有一个验证器 运行,我在其中检查输入的 phone 的格式是否与后端请求的信息兼容。 是否可以修改此正则表达式,以便它删除或不考虑输入的数字之间是否有空格? 这是我的验证器

    this.formGroup = this.fb.group({

      mobilePhone: [
        '',
        [
          Validators.required,
          CustomValidators.patternValidator(/^((\+)33|0|0033)[1-9](\d{2}){4}$/, { onlyNumber: true })
        ]
      ],
...


提前致谢?

正则表达式:

/^(\+\d{1,3}[- ]?)?\d{10}$/

您可以创建正则表达式并在 regex101.com 上进行测试 Here i have done for mobile number validation

如果正则表达式不起作用,那么您可以像这样创建一个手机号码验证服务:

服务文件(validaion.service.ts)

import * as PhoneNumber from 'awesome-phonenumber';

 static mobileNumberValidator(control) {
    const mobile = new PhoneNumber.default(control.value, 'US');
    return (!mobile.isValid() || !mobile.isMobile()) ? { invalidMobile: false } : null;
  }

TS 文件

mobileNumber: ['', [Validators.required, 
Validators.maxLength(13), ValidationService.mobileNumberValidator]],

HTML

<p class="error" *ngIf="editProfileForm.get('mobileNumber').touched && yourformName['mobileNumber'].errors ">
<span class="error-message" 
*ngIf="!editProfile['mobileNumber'].errors.required && !editProfile.mobileNumber.errors.invalidMobile">
Cell phone number is not valid</span>
 </p>