求一个正则表达式...

lf44785170 2009-02-26 09:58:35
想判断字条串是不是符合这样的格式:

第一: 必需是1-3个字符或数字开头 如 A01,AB,12,123
第二: 后面要加上 "-2"开头,再加上 3-5位的数字组成 如 A01-21235, AB-20, 12-2365, 123-288888
第三: 后面再加上 "-"开头,任意长度数字 如 A01-21235-123456789055, AB-20-1, 12-2365-5555, 123-288888-99999999999999999999999

正则我是刚开始学,感觉挺难的,这个比较复杂的要求不知道怎么写了,请大家帮忙,谢谢
...全文
64 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
SKY徐 2009-02-26
  • 打赏
  • 举报
回复
极力推荐网址 http://www.unibetter.com/deerchao/zhengzhe-biaodashi-jiaocheng-se.htm

学习正则表达式的好工具。可以看一下。有个测试正则表达式的工具,很好用。
lf44785170 2009-02-26
  • 打赏
  • 举报
回复
哇,真是太高手了,什么时候我也有三星级别就好了,真是看君一回复,胜读十天书!现在看起来也不是很复杂了,理论联系实际就是好,非常感谢!
我姓区不姓区 2009-02-26
  • 打赏
  • 举报
回复
分组构造:

string str = "A01-21235-123456789055";
Console.WriteLine(Regex.Match(str, @"^[0-9a-zA-Z]{1,3}\-2(\d{3,5})\-\d+$").Groups[1].Value);

wangyu065 2009-02-26
  • 打赏
  • 举报
回复
学习了
lf44785170 2009-02-26
  • 打赏
  • 举报
回复
谢谢 ojlovecd ,我还想问一个问题,如果我想提取 -2 后面那3-5位数字,应该如何做?
「已注销」 2009-02-26
  • 打赏
  • 举报
回复
学习了
也刚开始接触正则表达式
我姓区不姓区 2009-02-26
  • 打赏
  • 举报
回复
^[0-9a-zA-Z]{1,3}\-2\d{3,5}\-\d+$

110,535

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

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