众所周知,Vim 编辑器使用各种按键绑定和命令来提高用户工作效率。然而,这些键盘快捷键需要一些学习。初学者最常见的问题之一是使用 Vim 搜索文本,因为普通的 CTRL + F 方法在 Linux 上不起作用。不用担心。在本文中,我们将探索在 Vim 中搜索文本的不同方法。 
Vim 中的向前或向后文本搜索
这是在 Vim 中搜索文本的最常见和基本的方法,每个用户都应该知道它是如何工作的。它允许您快速搜索指定文件中的单词、短语甚至模式。要在 Vim 中搜索文本,请按照下列步骤操作: 
1.放置光标。
在正常模式下使用 h、j、k 和 l 键移动光标,或使用键盘上的箭头键将光标定位在要开始搜索的文本中。
2.使用搜索命令
在 Vim 中,您可以使用“/”符号向前搜索文本,也可以使用“?”向后搜索文本。象征。请根据您的搜索需要使用适当的符号。
3.输入您要搜索的词
然后输入您要搜索的单词或短语并按 Enter。例如,要向前搜索单词“Linux”,请使用以下命令:
/Linux光标移动到搜索文本的开头。此方法以区分大小写的方式搜索文本。要忽略区分大小写的搜索并进行不区分大小写的搜索,请在命令中使用 \c。只需在要搜索的文本前添加“\c”即可。例如:
/\clinux4.在搜索结果中导航
然后按“n”向前移动到下一个搜索结果,或按“N”向后移动。完成文本搜索后,退出 Vim 编辑器并转到下一个文档。 
在 Vim 中使用正则表达式搜索文本
前面的方法对于简单的单词和短语效果很好。但是,如果您需要搜索通用模式,例如您想要跨文本过滤所有电子邮件,请不要担心,Vim 允许您使用正则表达式搜索特定模式。
正则表达式是字符的集合,包括特殊字符和字母数字字符,表示特定的字符串模式。例如,您可以使用以下正则表达式符号: 正则表达式符号 行动 “。” 匹配任何单个字符 “*” 与前一个字符匹配任意次数的出现 “+” 匹配一个或多个出现的前一个字符 “[]” 来自定义的字符集的匹配 ‘\w’ 匹配前导字符匹配的任何单词
以下是如何使用正则表达式在 Linux 上的 Vim 编辑器中搜索文本。
1.放置光标。
使用箭头键移动光标并指定搜索的起点。
2.使用搜索命令
按“/”符号向前搜索或使用“?”符号。向后搜索。
3.输入您的搜索模式
输入您需要搜索的正则表达式搜索模式。例如,使用它来查找指定文本中的所有电子邮件 ID。
\<[A-Za-z0-9._%+-]\+@[A-Za-z0-9.-]\+\.[A-Za-z]\{2,\}\>是不是看起来很复杂?让我们来分解一下——
- \< 和 \> 标记电子邮件 ID 的开头和结尾,并确保整个单词匹配。
- [A-Za-z0-9._-]\+ 用于匹配所有出现的字母数字字符、加号、点、下划线和连字符
- @ 与“@”符号完全匹配
- [A-Za-z0-9.-]\+ 匹配任意出现的字母数字、点或连字符。
- \.匹配电子邮件 ID 中的点
- [A-Za-z]\{2,\} 匹配域名的最后部分,例如.com、.in 等。
4.在搜索结果中导航
按“n”向前移动到下一个搜索结果,按“N”向后移动。

在 Vim 编辑器中查找并替换文本
想象一下,您需要替换出现数百次的特定单词。对于这种情况,Vim 具有内置的搜索和替换功能,允许您使用简单文本和正则表达式来满足批量更改和有效文本管理的需求。
以下是如何在 Vim 中查找和替换文本。
1.进入命令模式
您可以按键盘上的“:”按钮进入命令模式并运行内置的 Vim 命令。
2.输入搜索和替换模式。
现在,根据以下语法输入搜索和替换模式即可开始。
%s/search_pattern/replacement_text/<flags>在上面的语法中,“%”符号指定 Vim 将操作应用于整个文件,“s”指定使用替代命令。
以下是您可以与此命令一起使用的一些标志。
- g – 表示“全局”标志,用于用替换内容替换整个文本中出现的所有搜索模式。
- c – 代表“确认”标志,用于在每次替换之前进行提示。
- i – 表示“不区分大小写”标志,用于在指定文件中不区分大小写地搜索。
例如,如果您想在整个指定文本中将单词“Linux”替换为“Unix”,并在每次替换前进行提示,请使用以下命令:
%s/linux/unix/gc底部出现如下提示:
replace with Unix (y/n/a/q/l/^E/^Y)?‘y’ 仅替换第一个匹配项,’n’ 跳过当前替换项,’a’ 替换所有匹配项,’q’ 结束此操作,替换 按“l”键之一退出。您还可以按 CTRL + E 向上滚动或按 CTRL + Y 向下滚动。
完成后,将出现一条确认消息,指示替换数量。
常问问题
要在 Vim 中搜索多个单词,首先使用搜索命令 ‘/’,然后添加标志 ‘\v’ 并写入多个单词,并用竖线 ‘|’ 分隔。字符类似于以下语法: \v<first_wor>|<second_word>|<third_word>





![2021 年如何设置 Raspberry Pi Web 服务器 [指南]](https://i0.wp.com/pcmanabu.com/wp-content/uploads/2019/10/web-server-02-309x198.png?w=1200&resize=1200,0&ssl=1)

