求一正则表达式

Top_小鑫 2019-02-19 11:19:31

图片名为 HC12i09-HI123456.jpg
OR HC52i32-HI123456_1.jpg
OR HI123456.jpg
.....

类似这样,我想得一正则表达式 能快速取得HI123456 这部分数据。
无论图片名怎么变动 如第一种情况根据‘-’去取 HI123456
第二种情况根据 '-'与'_'去取中间 HI123456
第三种没有包含'_' 直接取 HI123456
...全文
122 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
Top_小鑫 2019-02-19
  • 打赏
  • 举报
回复
引用 5 楼 娃都会打酱油了 的回复:
^\w+?(?=[\._])

这样就行,不用再按Group取

非常感谢!!!!
  • 打赏
  • 举报
回复
^\w+?(?=[\._])
这样就行,不用再按Group取
Top_小鑫 2019-02-19
  • 打赏
  • 举报
回复
引用 2 楼 娃都会打酱油了 的回复:
(?:-|^)(\w+?)(?=[\._])

取Group[1].Value


大神 ,试过了,可行,牛批。。
小弟再请教简单一个问题,如果图片为HI123456.jpg 或者 HI123456_1.jpg 或者 HI123456_2.jpg 取HI123456 数据
通用正则怎么写?这个比之前你写的容易多了,因为没有前面的数据了,直接根据后面有_来取数据
我对正则不懂,呵呵 见谅,等下分都给你。
Top_小鑫 2019-02-19
  • 打赏
  • 举报
回复
引用 1 楼 Top_小鑫 的回复:


大神 ,试过了,可行,牛批。。
小弟再请教简单一个问题,如果图片为HI123456.jpg 或者 HI123456_1.jpg 或者 HI123456_2.jpg 取HI123456 数据
通用正则怎么写?这个比之前你写的容易多了,因为没有前面的数据了,直接根据后面有_来取数据
我对正则不懂,呵呵 见谅,等下分都给你。
  • 打赏
  • 举报
回复
(?:-|^)(\w+?)(?=[\._])
取Group[1].Value
Top_小鑫 2019-02-19
  • 打赏
  • 举报
回复

110,538

社区成员

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

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

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