本文描述了如何在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。
如有任何疑问,请在下面的留言框里发表你的评论。