求正则表达式,在线等! 各位大侠,小弟求一正则表达式,7位数字的邮编,在第三位和第四位数字之间有一个"-",我写的是^(\d{0,3}(-\d{0,4})),可以为空,但是不可一超过7位数字,而且在第三位和第四位数字之间有一个"-",但是我匹配的时候就不能匹配三位的纯数字,例如:123不能被匹配,在正则表达式里括号里的内容是可有可无的吗?应该怎么写 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 ^(\d{0,3}(-\d{0,4}))这是你写的???晕你加上一个$就可以了^(\d{0,3}(-\d{0,4}))$不过你这么的话,这样的都可以匹配到!如0-0既然是七位,那么{0,3}{0,4}干什么???就直接写{3}{4}比如:^(\d{3}(-\d{4}))$ @"^\d{3}(\-\d{1,3})?$"经验证符合要求其实你应该多看看正则表达式都代表什么意思就好了\d{3}表示数字要出现3次\-表示 -要出现一次\d{1,3}表示 数字要出现1到3次 如果后边的数字最少是2位的话可以该成@"^\d{3}(\-\d{1,3})?$"? 表示前面的内容出现0或1次 完成非贪婪匹配(\-\d{1,3})? 这个组合则表示可以匹配 1:空,2:-1类型 3:-12类型 4:-123类型组合起来就是你要表达的意思了 不知道我这么说你能明白不 我是按照总位数是7位来写的 如果是单纯数字7位 前3后4的话改成下面的样子就好了@"^\d{3}(\-\d{1,4})?$" @"^\d{3}(\-\d{2,4})?$" \d{3}-\d{4} *****************************************************************************欢迎使用CSDN论坛专用阅读器 : CSDN Reader(附全部源代码) http://www.cnblogs.com/feiyun0112/archive/2006/09/20/509783.html Sql 语句,获取当月天数,以及本年天数 T-SQL如何实现定义自增主键? 修改表列为自增 学习存储过程时遇到的问题 关于序号排序的问题? 请问能不能写一个存储过程把数据库中的所有视图重新编绎一次 SQL select 出现一对多怎么处理 SQLserver 2000有什么SQL命令访问web地址? 关于年龄段的统计问题! 怎么我发了分帖子就不见了? Sql 语句:怎样得到如下结果? 得到数据库 表记录 数
就可以了
^(\d{0,3}(-\d{0,4}))$不过你这么的话,这样的都可以匹配到!如0-0既然是七位,那么{0,3}{0,4}干什么???就直接写{3}{4}比如:
^(\d{3}(-\d{4}))$
经验证符合要求
其实你应该多看看正则表达式都代表什么意思就好了
\d{3}表示数字要出现3次
\-表示 -要出现一次
\d{1,3}表示 数字要出现1到3次 如果后边的数字最少是2位的话可以该成@"^\d{3}(\-\d{1,3})?$"
? 表示前面的内容出现0或1次 完成非贪婪匹配
(\-\d{1,3})? 这个组合则表示可以匹配 1:空,2:-1类型 3:-12类型 4:-123类型
组合起来就是你要表达的意思了 不知道我这么说你能明白不
@"^\d{3}(\-\d{1,4})?$"
@"^\d{3}(\-\d{2,4})?$"
*****************************************************************************
欢迎使用CSDN论坛专用阅读器 : CSDN Reader(附全部源代码) http://www.cnblogs.com/feiyun0112/archive/2006/09/20/509783.html