在vim中跳出相似的行

问题描述 投票:0回答:1

假设我有一个如下所示的文本文件,我该如何:

Warning 1
Warning 2
Error
Warning 3  -> supposed I'm here
Warning 4
Warning 5
...
Warning n  -> how can I get here - the last match of the consecutive matches
Info 
Warning n+1 -> not here
...
vim
1个回答
0
投票

您可以搜索带有否定正则表达式的行,如下所示:

/\v^(Warning)@!

这是

/
使用
\v
或“非常神奇”模式进行搜索(否则
()
@
需要反斜杠转义)。
^
匹配行的开头,
(...)@!
匹配括号中 not 的内容。本质上,您正在寻找不以“警告”开头的行。

关键的一项是否定运算符,请参阅

:help /\@!
获取其文档。

浏览文件时,您通常会创建这样的搜索模式

0/\v^(<C-R><C-W>)@!

其中

0
转到行中的第一个字符(因此光标位于“警告”上)。然后开始编辑搜索模式 - 打开括号后 - 按 Ctrl-RCtrl-W (参见
:help c_CTRL-R_CTRL-W
)将光标下的单词(仍然是“警告”)放入命令行中。结束搜索模式并开始。

© www.soinside.com 2019 - 2024. All rights reserved.