正则表达式,从后向前匹配

6lilu9 2019-03-18 09:48:34
真心求教,不费话
如下字符串“你:我:他"
现想单独提取最后一个冒号后的内容
下面正则表达式
:[\s\S]*?$
提取的是“我:他”
我想要的结果就是“他”,请高手指点

...全文
3773 11 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
11 条回复
切换为时间正序
请发表友善的回复…
发表回复
madlbx 2021-06-19
  • 打赏
  • 举报
回复

(?<=我:).*?$

小窝拖孩 2020-06-10
  • 打赏
  • 举报
回复
.*:([\s\S]+)
夏末回忆 2019-11-18
  • 打赏
  • 举报
回复
:([^:]+)"这样就可以了
Capricornus_Hu 2019-05-17
  • 打赏
  • 举报
回复
引用 4 楼 兔子党-督察 的回复:
(?<=:)[^:]+(?=$)


我也想学习学习,希望大佬能指点指点,这个正则的理解
孤独的天才 2019-03-27
  • 打赏
  • 举报
回复
引用 6 楼 6lilu9的回复:
[quote=引用 4 楼 兔子党-督察 的回复:] (?<=:)[^:]+(?=$)
[^:]这是什么意思呢?非:,意思是只要不是:就行?但显然这样理解不对,高手指点 [/quote] 这个正则表达式的意思以:开头吧
6lilu9 2019-03-26
  • 打赏
  • 举报
回复
引用 4 楼 兔子党-督察 的回复:
(?<=:)[^:]+(?=$)
[^:]这是什么意思呢?非:,意思是只要不是:就行?但显然这样理解不对,高手指点
  • 打赏
  • 举报
回复
System.Text.RegularExpressions.RegexOptions.RightToLeft
  • 打赏
  • 举报
回复
System.Text.RegularExpressions.Regex.Matches(txt,@"", System.Text.RegularExpressions.RegexOptions.RightToLeft)
Demons1874 2019-03-18
  • 打赏
  • 举报
回复
为什么不用split
liusa1997 2019-03-18
  • 打赏
  • 举报
回复
引用 楼主 6lilu9 的回复:
真心求教,不费话
如下字符串“你:我:他"
现想单独提取最后一个冒号后的内容
下面正则表达式
:[\s\S]*?$
提取的是“我:他”
我想要的结果就是“他”,请高手指点

要看你怎么去思考匹配方式,比如我们可以从后面匹配,我们需要匹配最后一个字符但是这个字符前面必须是:就行了,所以代码:
(?<=:)\W$
结果:
q107770540 2019-03-18
  • 打赏
  • 举报
回复
(?<=:)[^:]+(?=$)

111,093

社区成员

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

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

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