regex - 正则表达式 Regex 提取字符串
问题描述
请有人可以帮助我,我是正则表达式的新手,不知道该怎么做!
我试图从一个看起来像这样的列表中提取......
Joe-Age23-46737-251.aspx
Tim-Age18-46909-451.aspx
Roger-Age41-59768-251.aspx
我想要的是这个...
46737-251.aspx
46909-451.aspx
59768-251.aspx
所以基本上是倒数第二个连字符之后的任何内容。
干杯
解决方案
让我们将“倒数第二个连字符之后的所有内容”翻译成正则表达式:
(?<=-)[^-]*-[^-]*$
解释:
(?<=-) # Assert starting position right after a hyphen
[^-]* # Match zero or more characters except hyphens
- # Match a single hyphen
[^-]* # see above
$ # until end of string.