本文描述了如何在Vim / Vi中执行搜索操作。

Vim或其前身Vi预装在macOS和大多数Linux发行版上。搜索文本是处理文件时最常见的任务之一。当您遇到自己喜欢的编辑器不可用的情况时,了解Vim的基础知识可能非常有用。

基本的搜索

要在Vim中搜索,必须处于正常模式。当您启动Vim编辑器时,您处于这种模式。要从任何其他模式回到正常模式,只需按Esc键。

Vim允许您使用/(正斜杠)和?(问号)命令。

按/进行正向搜索,按?进行反向搜索,输入搜索模式并按回车键进行搜索:

需要注意的是,搜索命令查找的模式是字符串,而不是整个单词。例如,如果您正在搜索“lis”,搜索会找到嵌入“lis”的较大单词,如“list”或“linkedlist”中的匹配项。

按n搜索下一个出现或按大写字母N搜索相反的方向。

在Vim中执行搜索的基本步骤如下:

  • 按/。
  • 输入搜索模式。
  • 按Enter键执行搜索。

按n查找下一个出现,按N查找前一个出现。

搜索整个单词

要搜索整个单词,请按/或?键开始搜索,键入\<标记单词的开头,输入搜索模式,键入\>标记单词的结尾,然后按enter键执行搜索。

例如,要搜索“visited”,你可以使用/\:

搜索当前的单词

您也可以通过将光标移动到单词并按*(星号键)向前搜索或按#(井号键)向后搜索来搜索整个单词。要查找下一个匹配项,请再次按*或#。

搜索历史记录

Vim会跟踪您在当前会话中进行的所有搜索操作。要浏览搜索历史记录,请按/或?。并使用上/下箭头键查找上一个搜索操作。要运行搜索,只需按Enter。您也可以在执行操作之前编辑搜索模式。

区分大小写

默认情况下,搜索结果区分大小写;搜索“ list”将不匹配“ List”。

要忽略大小写,请在Vim命令行中输入:set ignorecase 或者 :set ic。您也可以通过在〜/.vimrc文件中添加命令,将忽略大小写设置为默认选项。

要返回到大小写匹配模式,请输入:set noignorecase 或 :set noic。

强制忽略大小写的另一种方法是在搜索模式后附加\c。例如, /Linuxmi\c将执行忽略大小写搜索。模式后的大写\C强制进行大小写匹配搜索。

总结

要在Vim/Vi中搜索,请输入/或?,输入搜索模式,然后按Enter。

如有任何疑问,请在下面的留言框里发表你的评论。

发表回复