猿问
回到首页
个人中心
反馈问题
注册登录
下载APP
首页
课程
实战
体系课
手记
专栏
慕课教程
正则表达式将匹配有效的国际电话号码?
正则表达式将匹配有效的国际电话号码?
在尝试拨打电话号码之前,我需要确定电话号码是否有效。电话可以去世界任何地方。
正则表达式将匹配有效的国际电话号码?
梦里花落0921
浏览 1257
回答 3
3回答
HUX布斯
\+(9[976]\d|8[987530]\d|6[987]\d|5[90]\d|42\d|3[875]\d|2[98654321]\d|9[8543210]|8[6421]|6[6543210]|5[87654321]|4[987654310]|3[9643210]|2[70]|7|1)\d{1,14}$是否匹配通用国际电话号码的正确格式。我用标准的国际访问代码标识符'+'替换了美国陆线中心国际访问代码011,使其成为强制性的。我还将国家号码的最小值更改为至少一位数。请注意,如果您以此格式在手机地址簿中输入数字,无论您在何处旅行,都可以成功拨打地址簿中的任何号码。对于陆线,请将plus替换为您要拨打的国家/地区的国际访问代码。请注意,这并未考虑国家号码计划规则 - 具体而言,它允许在国家号码计划可能不允许的位置使用零和一些,并且还允许某些国家/地区(例如美国)的号码长度大于国家号码计划。
0
0
0
冉冉说
这是进一步的优化。\+(9[976]\d|8[987530]\d|6[987]\d|5[90]\d|42\d|3[875]\d|2[98654321]\d|9[8543210]|8[6421]|6[6543210]|5[87654321]|4[987654310]|3[9643210]|2[70]|7|1)\W*\d\W*\d\W*\d\W*\d\W*\d\W*\d\W*\d\W*\d\W*(\d{1,2})$(i)允许有效的国际前缀(ii)后跟9或10位数字,任何类型或位置的分隔符(最后两位数之间除外)这将匹配:+ 1-234-567-8901 + 61-234-567-89-01 + 46-234 5678901 +1(234)56 89 901 +1(234)56-89 901 +46.234.567.8901 +1 / 234 /八千九百○一分之五百六十七
0
0
0
打开App,查看更多内容
随时随地看视频
慕课网APP
相关分类
正则表达式
正则判断数字末尾的为0情况
3 回答
继续浏览精彩内容
慕课网APP
程序员的梦工厂
打开
继续