gpt4 book ai didi

javascript - 如何在 Angular 7 中使用 + 号验证国家代码?

转载 作者:行者123 更新时间:2023-11-29 18:42:30 25 4
gpt4 key购买 nike

我有一个文本框。在那里,用户可以使用 + 号输入国家代码。

如果他只输入数字,我们不应该允许他输入。他必须使用 + 符号输入国家代码,例如:+91、+230、... 我正在互联网上搜索正则表达式。我在 Angular 7 中找不到好的解决方案。

代码:

ngOnInit() {

this.registerFormGroup = this.formBuilder.group({
clientId: ['', Validators.compose([Validators.required, Validators.pattern('^[0-9]*$')])],
mobileNumber: ['', Validators.compose([Validators.required, Validators.pattern('^[0-9]*$')])],
email: ['', Validators.compose([Validators.required, Validators.email, Validators.maxLength(1000)]) ],
countryCode: ['', Validators.compose([Validators.required, Validators.pattern('/^[- +()]*[0-9][- +()0-9]*$/')]), ],
});

}

最佳答案

尝试使用以 + 开头并具有所需位数的正则表达式

let regex = /^[+]\d{12}$/; // enter the total number if digits you want

let correct = '+911234567890'
let inCorrect = '911234567890'

console.log(regex.test(correct))
console.log(regex.test(inCorrect))

要在 Angular 形式验证器中使用 \d,看起来我们必须转义“反斜杠”,所以您的模式将像:

Validators.pattern('^[+]\\d{12}$')

在这里看一个例子:https://stackblitz.com/edit/angular-hdctcl?file=src/app/app.component.html

或者你可以使用:

Validators.pattern('^[+][0-9]{12}$')

关于javascript - 如何在 Angular 7 中使用 + 号验证国家代码?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55949311/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com