如何创建验证西班牙手机号码的正则表达式?
他们必须遵守以下规则。
开头:
- [可选的]
+34
- [可选的]
34
- [可选的]
0034
从这里你应该有:
- 正好 9 个数字(允许使用空格和连字符)
- 第一个数字必须是
6
或7
有效的:
666444555
666-444-555
666 44 45 55
666-44-45-55
+34666555444
0034666555444
无效
935554488
+44777555444
800444666
635*554*488
635/554/488
注意:它被标记为java,因为这就是我要解析
String
它的方式以及如果你想显示代码。当然,这不是绝对必要的,用正则表达式我已经足够了。
这个正则表达式应该可以解决问题:
我手头没有 Java 环境,但所有提到的测试用例都通过了RegexPlanet工具。
我建议你使用
libphonenumber
(谷歌的图书馆来验证电话号码)。与您自己的实现相比,它有很多优点,例如您不必自己维护它,并且无论用户如何输入它,它都会以国际格式为您提供数字。如何使用它的一个例子是:
现在有许多方法,但最重要的是:
如果您想以国际格式查看号码:
要查看演示并测试它是否完全满足您的所有要求,您可以访问此处。