给出输入字符串:
a
a
bcx
ada
ac
表达式a.+?c
(a
和c
不一定是单字母标记)导致2个匹配项:
a
a
bc
和
ada
ac
当我真正想要的时候:
a
bc
和
a
ac
基本上,我想要尽可能小的匹配部分。如何在Notepad ++中实现此目标?
答案 0 :(得分:2)
您可以在DOTALL
(或s
)模式下以负先行使用此正则表达式:
a(?:(?!a.+c).)+?c
RegEx详细信息:
a
:匹配字母a
(?:(?!a.+c).)
:如果不跟表达式a.+c
+?
:匹配上一个或多个前一组(非贪婪)c
:匹配字母c
PS:如果您不真正处理单个字母,则可以轻松调整此模式。
答案 1 :(得分:0)