如何匹配除一个之外的所有单词?

sim*_*ico 3 java regex negative-lookahead

我正在尝试匹配以PRE开头并以PRE结束的表达式.我正在寻找一个懒惰的匹配,即匹配表达式中的结尾PRE应该是在启动PRE之后找到的第一个.我试图通过负面的前瞻性正则表达式来实现这一点,在RegExr上进行测试:

正则表达式:

PRE(\w|\s)+(?!PRE)
Run Code Online (Sandbox Code Playgroud)

要匹配的表达式:

PRE erp PRE edas PRE
Run Code Online (Sandbox Code Playgroud)

上面的表达式与给定的正则表达式完全匹配,而我原本只期望匹配PRE erp PRE.请建议一个正则表达式,它与表达式的开头和结尾一致.

nha*_*tdh 5

假设您的语言支持延迟匹配(如果它支持环视,我想它也支持延迟量词):

PRE(.*?)PRE
Run Code Online (Sandbox Code Playgroud)

由于这个答案可能有误,请在下次指定您的语言.Regex针对不同的语言提供了不同的功能集.