相关疑难解决方法(0)

正则表达式捕获第n个匹配项

有什么方法可以使用正则表达式返回第n次出现?我确实搜索了论坛,只发现了超出正则表达式本身的解决方案(即需要编程语言的支持)。

示例:正则表达式:

(?:\$(\d+(?:,\d{3})*\.\d{2}))
Run Code Online (Sandbox Code Playgroud)

输入:

    thiscanbeanything$25.74thiscanbesomethingelse
alsowithnewlines$533.63thisonetoo$54.32plusthis$62.42thisneverends
Run Code Online (Sandbox Code Playgroud)

我需要提取第一个(25.74)。稍后,我可能需要提取第三个(即54.32)。

我的正则表达式当前正在匹配所有匹配项。我可以在匹配后检索第n个元素,但是我的问题是:是否可以仅通过正则表达式来实现(即正则表达式将仅返回我想要的第n个元素)?

谢谢!

regex

4
推荐指数
1
解决办法
1万
查看次数

标签 统计

regex ×1