我只需要提取以下第一个匹配项:
输入(请忽略将其视为XML,使用XPath等的任何可能性 - 这只是一个例子):
<city>NYC - New York </city><city>PAR - Paris</city><city>NYC - New York </city><city>MIA - Miami</city>
正则表达式:
(?si).*?(?:NYC\s-\s)([^<]*)
正如你所看到的,我已经把它变得懒惰,但纽约都被抓获了。如果我让它贪婪,只有最后一个被捕获。
我需要通过正则表达式(不是通过find
方法)来限制只捕获第一个(事实上,最好的是控制我想要的那个,比如第8次出现)。
我担心它会使正则表达式变得非常混乱。
有帮助吗?
谢谢!