基本上,我想搜索某些内容并获取一个捕获组,然后忽略搜索并获取与该捕获组匹配的结果。

因此,如果我有这段文字:

apples are good
bananas are bad
oranges are good

I want oranges
I want bananas
I want apples

我想搜索(\w+) are good,然后搜索I want \1以获得I want applesI want oranges

我将如何在一个表达式中做到这一点?

(不好意思的解释很抱歉)

最佳答案

这样做:

/.*?(\w+?)\sare\sgood.*?(\w+?)\sare\sgood.*(I\swant\s(\1|\2)).*(I\swant\s(\1|\2))/s

据我所知,它仅适用于所提供的文本,所以有点hacky,据我所知,没有一种方法可以使用单个正则表达式为“好”的每次出现抓住所有“我想要的”事件。

10-08 19:26