当前位置:编程学习 > C#/ASP.NET >>

求一个正则表达式.

要求20个字母里面只能出现"(,),-,和0-9的数字.
也就是电话号码的正则. --------------------编程问答--------------------

在做项目时常常用到判断电话号码的正则表达式,写了一个,可验证如下27种格式:
110
8888888
88888888
8888888-123
88888888-23435
0871-8888888-123
023-88888888-23435
86-0871-8888888-123
8888888_123
88888888_23435
0871_8888888_123
023_88888888_23435
86_0871_8888888_123
8888888-123
88888888-23435
0871-8888888-123
023-88888888-23435
86-0871-8888888-123
8888888—123
88888888—23435
0871—8888888—123
023—88888888—23435
86—0871—8888888—123
13588888888
15988888888
013588888888
015988888888
分格时,用户可以输入中英文的-_-—
正则表达式如下:
(^(\d{2,4}[-_-—]?)?\d{3,8}([-_-—]?\d{3,8})?([-_-—]?\d{1,7})?$)|(^0?1[35]\d{9}$)
--------------------编程问答-------------------- http://www.cnblogs.com/flyker/archive/2009/02/12/1389435.html --------------------编程问答-------------------- 86-0871-8888888-123 --------------------编程问答--------------------

8888888-123
88888888-23435
0871-8888888-123
023-88888888-23435
86-0871-8888888-123
8888888—123
88888888—23435
0871—8888888—123
023—88888888—23435
86—0871—8888888—123

这些我测试的时候,为什么没有match出来啊? --------------------编程问答--------------------
引用 2 楼 q107770540 的回复:
http://www.cnblogs.com/flyker/archive/2009/02/12/1389435.html

学习。 --------------------编程问答--------------------
引用 4 楼 pmars 的回复:
C# code

8888888-123
88888888-23435
0871-8888888-123
023-88888888-23435
86-0871-8888888-123
8888888—123
88888888—23435
0871—8888888—123
023—88888888—23435
86—0871—8888888—123


这些我测试的时候,为什么没有match出……

对不起,是我的错,读文件的时候格式的问题!
补充:.NET技术 ,  C#
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,