vim学习六之搜索命令

Vim基本搜索命令

/ 或者? 搜索

在Vim普通模式下,输入 / 或 ? 符号就进入了搜索模式,/ 用于正向往下搜索,? 用于反向往上搜索。

n/N 正反向下一个

在搜索模式下可以对Vim打开的整个文本内容进行搜索,当按下 n 时可以继续正向查找下一个相匹配的目前单词。N 的作用与 n 相反,是往上反向搜索目标单词。

光标处单词搜索

在Vim命令模式下,如果要搜索当前光标下的单词,除了可以使用/ 和 ?外,还可以使用特殊命令* 和 #。

假设光标当前所有单词为the,那么在当前光标位置执行命令 * 相当于搜索命令 /<the>,命令 # 等同于命令 ?<the>。

\< 是一个单词定界符,表示只匹配单词的开头;
\> 也是单词定界符,表示只匹配单词末尾。

注意:搜索一些特殊的字符,例如:*、[、]、^、%、/、?、~、$等,需要在它们的前面加上转义符号\。

Vim高亮搜索

为了在Vim中高亮显示被搜索的字符,可以使用命令 :set hlsearch,可以在Vim命令行模式执行命令或者在配置文件 .vimrc 中进行永久设置。

如果需要清除最近一次的屏幕搜索高亮结果,可以在Vim命令行模式使用命令 :nohlsearch 或其缩写形式 :noh。

搜索大小写敏感

默认Vim搜索命令是大小写敏感的,因此,搜索 the 不会查找到 The。使用命令 :set ignorecase 会使得Vim搜索变得不区分大小写。

可以在搜索命令中使用 \c 来强制使得当前搜索模式不区分大小写,
而命令 \C 则会强制当前搜索模式大小写敏感。
因此,/the\c 既会查找 the,也会查找到 THE 或者 The 等等。

搜索进阶

在搜索命令前还可以增加一个整数,用于表示搜索目标出现的位置。
例如,3/pattern 将会搜索模式 pattern 第三次出现的位置,
而 3* 会搜索当前光标所在位置单词第三次出现的位置。

Vim正则表达式搜索

为了更好的进行搜索,Vim支持正则表达式,最基本的正则表达式规则包括:

^         表示一行的开头
$         表示一行的结尾
.         表示任意一个字符
*         匹配0次或n次

查找在行首的特定串

请添加图片描述

查找在行尾的特定串

请添加图片描述

匹配特定行

请添加图片描述

上图中使用了/^test.*$
其中^表示匹配行首、
.*表示匹配任意字符、
$表示匹配行尾,
合起来表示搜索任意以test开头的行。
  • 8
    点赞
  • 52
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Vim是一款在Linux和其他类Unix系统上广泛使用的文本编辑器。它是Vi编辑器的改进版本,提供了更多的功能和灵活性。Vim具有强大的编辑功能和高度可定制性,使得它成为程序员和系统管理员的首选编辑器之一。 以下是一些常用的Vim命令: 1. 进入Vim编辑模式: 在终端中输入`vim`命令,然后按下回车键即可进入Vim编辑器。 2. 保存和退出: - `:w`:保存文件。 - `:q`:退出Vim。 - `:wq`:保存并退出Vim。 3. 光标移动: - `h`:向左移动一个字符。 - `j`:向下移动一行。 - `k`:向上移动一行。 - `l`:向右移动一个字符。 - `gg`:跳转到文件开头。 - `G`:跳转到文件末尾。 - `:行号`:跳转到指定行。 4. 插入和编辑文本: - `i`:在当前光标位置前插入文本。 - `a`:在当前光标位置后插入文本。 - `o`:在当前行下方插入新行并进入插入模式。 - `O`:在当前行上方插入新行并进入插入模式。 - `x`:删除当前光标所在位置的字符。 - `dd`:删除当前行。 - `yy`:复制当前行。 - `p`:粘贴复制的内容。 5. 搜索和替换: - `/关键词`:向前搜索指定关键词。 - `?关键词`:向后搜索指定关键词。 - `n`:跳转到下一个匹配项。 - `N`:跳转到上一个匹配项。 - `:s/旧内容/新内容/g`:替换文本中的旧内容为新内容。 这只是Vim的一小部分功能和命令Vim还有很多高级功能和插件可供使用。如果你对Vim感兴趣,可以进一步学习和探索。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值