我已经读了this和that,但我的正则表达式仍然不起作用-它返回了第一个匹配,而我希望它返回最后一个匹配。目标是提取x字符之前的最后一个数字和其后的第一个数字。到目前为止,我的正则表达式是((\d+)+).*x(\d)测试输入:1x2x3x4预期结果:2组?(含3和4)实际结果:3组?!(1、1、4)
x
((\d+)+).*x(\d)
1x2x3x4
3
4
1
ilmyapht1#
您可以捕获2组数字,在字符串末尾的两组之间有一个x字符
(\d+)x(\d+)$
查看regex demo如果支持lookbehind,则不使用锚点:
.*(?<!\d)(\d+)x(\d+)
Regex demo
1条答案
按热度按时间ilmyapht1#
您可以捕获2组数字,在字符串末尾的两组之间有一个x字符
查看regex demo
如果支持lookbehind,则不使用锚点:
Regex demo