求一个正则表达式

liushiying18 2019-02-28 08:23:49
CDGBD20190101-0001_12
CDGBD20190101-0001

求正则表达式,上面字符串中提取出下面内容,谢谢。
20190101-0001
...全文
356 14 打赏 收藏 转发到动态 举报
写回复
用AI写文章
14 条回复
切换为时间正序
请发表友善的回复…
发表回复
weixin_43917813 2019-03-02
  • 打赏
  • 举报
回复
[0-9]{8}-[0-9]{4}
张天星 2019-03-02
  • 打赏
  • 举报
回复
引用 11 楼 snlixing 的回复:
"CDGBD20190101-0001_12".Substring(5,13)
这个简单直接。。。
秋的红果实 2019-03-01
  • 打赏
  • 举报
回复
(?<=CDGBD).{13}
极客诗人 2019-02-28
  • 打赏
  • 举报
回复
不就是以 "-"为切割点 前取8后取4嘛
liusa1997 2019-02-28
  • 打赏
  • 举报
回复
引用 5 楼 liushiying18 的回复:
必须前面是CDGBD,提取的字符串不用CDGBD

我建议一次性能把问题说清楚最好点,方便大家思考
liushiying18 2019-02-28
  • 打赏
  • 举报
回复
谢谢你怎么修改这个CDGBD\d{8}-\d{4}(_\d+)?

让提取的字符串不带CDGBD
liusa1997 2019-02-28
  • 打赏
  • 举报
回复
引用 6 楼 liusa1997 的回复:
如果你只想提取出CDGBD20190101-0001而不要CDGBD20190101-0001_12,那么加条件即可:([^CDGBD_]+){13}。其实正则不唯一,但是还是简单好点:[0-9]{8}-[0-9]{4}
liusa1997 2019-02-28
  • 打赏
  • 举报
回复
如果你只想提取出CDGBD20190101-0001而不要CDGBD20190101-0001_12,那么加条件即可:([^CDGBD_]+){13}。其实正则不唯一,但是还是简单好点:[0-9]{8}-[0-9]{4}
liushiying18 2019-02-28
  • 打赏
  • 举报
回复
必须前面是CDGBD,提取的字符串不用CDGBD
liusa1997 2019-02-28
  • 打赏
  • 举报
回复
图片没加载,重传一次
liusa1997 2019-02-28
  • 打赏
  • 举报
回复
给一个极其不标准的规则,因为不知道你需要匹配的pattern到底是否是固定格式
路马 2019-02-28
  • 打赏
  • 举报
回复
[0-9]{8}-[0-9]{4}
EdsionWang 2019-02-28
  • 打赏
  • 举报
回复
如果你确定所有源字符串都是固定格式的话,那就很简单了

[0-9]{8}-[0-9]{4}
甚至你可以用substring去截取中间的一串数字
snlixing 2019-02-28
  • 打赏
  • 举报
回复
"CDGBD20190101-0001_12".Substring(5,13)

110,538

社区成员

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

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

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