我们假设我有这样的文字:
people world computer world apple
我希望正则表达式匹配文本中以“worl”开头并以“pple”结尾的字符串,并尽可能地缩短。
所以,我希望它找到这个确切的字符串(在这种情况下):world apple
,不这一个:world computer world apple
(因为它更长)。
这只是一个例子。一般来说,我不在乎“worl”和“pple”之间是否有,几个或几百个字符,我唯一关心的是找到 最短的可能性
我试过这个正则表达式:https://regex101.com/r/vcPyAW/5
这是worl(.*?)(?!worl)(.*?)pple
,但正如您所看到的,它只匹配较长的选项。
我将用上面的正则表达式解释我的想法: 找到一个字符串:
我一直在寻找几个小时找到任何可行的解决方案,但似乎没有任何工作可行。我希望有人会帮忙。 :) 如果问题不明确,请询问。 再说一遍:上面的示例文本只是一个例子,一般来说我只需要提供我想要查找的文本的起始和结束字符串,然后找到最短的可能性。
我正在使用VBA中的RegExp库,因为我需要在Word中使用它。