电话号码正则表达式的全面书写方法

number1170196649 2012-08-04 02:05:55
比如实现如下号码:区号+号码、(区号)+号码、区号-+号码、号码等。区号一般是0开头。还有手机号码的正则表达式。
...全文
233 12 打赏 收藏 转发到动态 举报
写回复
用AI写文章
12 条回复
切换为时间正序
请发表友善的回复…
发表回复
代码誊写工 2012-08-04
  • 打赏
  • 举报
回复
这会儿就好了,刚刚居然回复不了
^((?<parenthesis>\()?((((\+|00)[1-9][0-9]{0,3}[\s]*)|0)[1-9][0-9]{1,2})(?(parenthesis)\)\s?|[\s\-]?))?[1-9][0-9]{5,7}$
XXXX部分支持6-8位
不允许“(8620)XXXX ”这种国际区号没有+或则00打头的
chinagzu 2012-08-04
  • 打赏
  • 举报
回复
^(([0\+]\d{2,3}-)?(0\d{2,3})-)?(\d{7,8})(-(\d{3,}))?$
代码誊写工 2012-08-04
  • 打赏
  • 举报
回复
kao
反而错了
代码誊写工 2012-08-04
  • 打赏
  • 举报
回复
"^((?<parenthesis>\()?((((\+|00)?[1-9][0-9]{0,3}[\s]*)|0)[1-9][0-9]{1,2})(?(parenthesis)\)|[\s\-]?))?[1-9][0-9]{5,7}$"
再改下,稍微严格一点儿
代码誊写工 2012-08-04
  • 打赏
  • 举报
回复
"^((?<parenthesis>\()?((((\+|00)?[1-9][0-9]{0,3}[\-\s]*)|0)[0-9]{2,3})(?(parenthesis)\)|[\s\-]*))?[1-9][0-9]{5,7}$"
一般电话号码,刚做的,测得不全,大家再改改
支持
+8620 XXXXXX
+8620-XXXXXX
+8620XXXXXX
008620 XXXXXX
008620-XXXXXX
008620XXXXX
(008620) XXXXX
(+8620) XXXXXX
(020) XXXXX
020 XXXXX
020XXXX
020-XXXXXXX
XXXXXXX
  • 打赏
  • 举报
回复
(((\d{4})?-?[1-9][0-9]{6,7})|([1-9][358]\d{9})|(\d{3}-?\d{3}-?\d{4}))
代码誊写工 2012-08-04
  • 打赏
  • 举报
回复
[Quote=引用 4 楼 的回复:]

^1(3[0-9]|5[0-35-9]|8[025-9])\\d{8}$ 这个绝对没错,我一直用呢!嘿嘿
[/Quote]
已经有很多14打头的号码了
jiayouwenzhiyi 2012-08-04
  • 打赏
  • 举报
回复
我上面那个是手机号码的
jiayouwenzhiyi 2012-08-04
  • 打赏
  • 举报
回复
^1(3[0-9]|5[0-35-9]|8[025-9])\\d{8}$ 这个绝对没错,我一直用呢!嘿嘿
devmiao 2012-08-04
  • 打赏
  • 举报
回复
\({0,1}\d{3,4}\){0,1}[\+|\-]{0,1}\d+
酷儿 2012-08-04
  • 打赏
  • 举报
回复
这个的话,你写一个出来,再复制改一下就行了。区号有4位的,有三位的比如010 0755 号码有8位的,有7位。而手机号码前面有+86 也有 86开头的+11位号码。正则楼主你看下就应该可以写的出来了,简单的
代码誊写工 2012-08-04
  • 打赏
  • 举报
回复
手机用这个吧,中国的应该没有问题吧:"^[1][3458][0123456789]{9}$"

62,046

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧