Vim匹配矩形区域

Cyc*_*hih 7 regex vim

我想使用正则表达式匹配Vim中的矩形区域,例如:

abcd test1
abcd test2
Run Code Online (Sandbox Code Playgroud)

我想匹配test1,并test2在一次,但不abcd秒.(test1并且test2是不变的,我们不需要考虑[0-9],这只是一个例子)

我希望匹配每列对齐 test1 test2

这个

test1
test2
Run Code Online (Sandbox Code Playgroud)

矩形区域可能出现在任何地方,我不能假设它在"第3列"或类似的东西.

如果它们未对齐,则不匹配.

我试过\1\@<=test1\n\(.*\)\@<=test2但没有运气,因为前瞻打破了一个群体.(来自:help \\@<=)

有没有人知道如何只使用vim-regex?谢谢.


编辑:

一个复杂的例子可能是这个:

aaaaaaaaa
b test1 b
c test2 c
ddddddddd
Run Code Online (Sandbox Code Playgroud)

只匹配test1test2.

使用两个或更多正则表达式是可以接受的(一个用于test1,另一个用于test2?)


EDIT2:

这只是为了好玩,我只是好奇vim可以达到多少,这不是一个严重的问题,它对许多人来说可能是无聊和毫无意义的,对我来说很好,请不要打扰,晚安:)

abd*_*una 0

尝试以下操作来查找您需要的匹配语法是 /somethingWeAreLooking\(_.\)*followedByTheOtherThing

在这种情况下,它将是这样的:

/test\(_.\)*[1-9]