移动电话、固定电话和时间的正则表达式如何写?

zh_zh_y 2004-05-03 02:23:41
打算使用验证控件来验证用户输入的移动电话、固定电话和时间进行验证,但是我对正则表达式不熟悉,写了一个多小时,都没有完全搞定,请大家帮帮忙。或是大家给点建议你们是如何来验证这些数据的。

1。移动电话包括移动和联通;
2。固定电话格式:****-******* 或者***-********,比如0788-8888888,020-88888888
3.时间 ****-**-**

...全文
156 4 点赞 打赏 收藏 举报
写回复
4 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
zh_zh_y 2004-05-03
我试试看看,如果有效,明天结贴,谢谢两位了。
  • 打赏
  • 举报
回复
Gorgee 2004-05-03
^13[0-4]{1}[0-9]{8} 联通
^13[5-9]{1}[0-9]{8} 移动
^[0-9]{3,4}\-[0-9]{3,8}$)|(^[0-9]{3,8}$)|(^\([0-9]{3,4}\)[0-9]{3,8}$)|(^0{0,1}13[0-9]{9}$ 混合

日期用楼上的
  • 打赏
  • 举报
回复
shadowclaw 2004-05-03
突然想起来了,不知道现在的电话号码是不是都是8位的座机号,如果是的话,把上面的\d{7,8}改成\d{8}。另外,区号的第一位是不是都是0啊?有限制的话,我再重新写个。下面的日期有必要重新限制范围的话,也可以重新写。
  • 打赏
  • 举报
回复
shadowclaw 2004-05-03
这个是电话,但是没具体限制,只是限制了位数,因为不知道号码有那些。
\d{3,4}-\d{7,8}|(\d{11})

下面的是日期:从1900-1-1到2050-12-31(具体的上限是多少记不太清了,不过和这个差不太远)的范围。
(((19[0-9][0-9]|20[0-5]0)-(0[13578]|10|12)-(0[1-9]|[12][0-9]|3[01]))|((19[0-9][0-9]|20[0-5]0)-(0[469]|11)-([0][1-9]|[12][0-9]|30))|((19[0-9][0-9]|20[0-5]0)-(02)-(0[1-9]|1[0-9]|2[0-8]))|((190[48]|200[048])-(02)-(29))|((19[2468][048]|20[24][0248])-(02)-(29))|((19[13579][26]|20[13][26])-(02)-(29)))
  • 打赏
  • 举报
回复
相关推荐
发帖
.NET社区
加入

5.9w+

社区成员

.NET技术交流专区
申请成为版主
帖子事件
创建了帖子
2004-05-03 02:23
社区公告
暂无公告