目录

  • Vim基本搜索命令
    • / 或者? 搜索
    • n/N 正反向下一个
    • 光标处单词搜索
  • Vim高亮搜索
  • 搜索大小写敏感
  • 搜索进阶
  • 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开头的行。

vim学习六之搜索命令相关推荐

  1. vim内置的搜索命令vimgrep使用

    vim内置搜索命令vimgrep, 可以在多个文件里查找关键字.相当于IDE里的关键字搜索功能. vimgrep命令: :vim[grep] /pattern/[g][j] files ... g和j ...

  2. adb学习:六(成功):adb命令卸载APK文件

    目录 一.目的 1.想知道: adb命令卸载APK文件 二.参考. 1.adb安装和卸载apk的方式 三.注意 1.安装的命令 四.操作:1: 完成 :能实现卸载apk 1.操作 四.操作:2:系统文 ...

  3. vi 搜索命令_vi或vim如何查询关键字

    请关注本头条号,每天坚持更新原创干货技术文章. 如需学习视频,请在微信搜索公众号"智传网优"直接开始自助视频学习 1. 前言 本文主要讲解如何在vim里查询特定关键字. 我是一个新 ...

  4. vim学习笔记-常用命令

    vim手册功能太多了,在此整理一些常用的供后期学习查阅 1.移动光标方式 j:上(同↑) k:下(同↓) h:左(同←) l:右(同→) +或Enter: 把光标移至下一行第一个非空白字符. -: 把 ...

  5. LINUX学习基础篇(六)帮助命令

    LINUX学习基础篇(六)帮助命令 帮助命令 man(Manual) info help - -help 帮助命令 man(Manual) 作用:查看联机帮助手册. 执行权限:所有用户. man命令的 ...

  6. linux搜索命令有哪些,linux五大搜索命令学习

    五大搜索命令学习 分别解释locate,find,which,whereis,grep 五大linux搜索命令 locate 解释:由man手册可以看出,locate查找就是根据文件名进行查找,只是依 ...

  7. Linux文件搜索命令学习

    你必须非常努力,才能看起来毫不费力! 微信搜索公众号[ 漫漫Coding路 ],一起From Zero To Hero ! 前言 本篇文章主要讨论Linux中的文件搜索命令,大家一起来学习吧! fin ...

  8. Linux学习——第三部分 文件内容、搜索命令、系统信息

    文章目录 一.文件内容 1. head:查看文档的前几行内容 2. tail:查看文档(日志)的后几行内容 3. grep:搜索存在关键字的行 4. cut:以某种方式按照文件的行进行分割 5. so ...

  9. linux学习笔记3--压缩和搜索命令

    1.tar命令 tar 命令用于对文件进行打包压缩或解压,格式为"tar [选项] [文件]" 主要使用的是.tar 或.tar.gz或.tar.bz2 格式 接下来将打包后的压缩 ...

最新文章

  1. oracle result_cache_max_size,oracle database 11g新特性之设置result cache-Oracle
  2. nginx 源码调试
  3. php用session制作网站仿恶意刷新计数器
  4. 【转帖】配置管理计划(CM Plan)
  5. java用十字链表实现无向图_实验四:图的实现与应用
  6. a4988 脉宽要求_A4982/A4984/A4985和A4988设备主要针对办公室自动化市场
  7. 多线程编程学习笔记——线程池(二)
  8. 2021年河南省高考成绩啥时候查询,2021年河南高考成绩什么时候出来,今天几点钟出成绩可以查询...
  9. [渝粤教育] 重庆工程职业技术学院 Linux服务器配置与管理 参考 资料
  10. .NET回归 HTML----表单元素(1)和一些常用的标记
  11. Eplan 各版本 软件 百度网盘 永久链接
  12. Java常量池储存什么_JAVA常量池中存储的常量是什么
  13. 模拟电视原理(笔记)
  14. teraterm 执行sql_teraterm自动或定时执行远程命令
  15. 计算机装系统找不到硬盘分区,系统安装找不到现有分区,小编教你如何解决系统安装找不到现有分区...
  16. 腾讯云国际版cvm云服务器如何重装系统-UNIRECH
  17. 未报告的异常错误IOException; 必须对其进行捕获或声明以便抛出
  18. opencv c++实现棋盘格标定
  19. 1789 员工的直属部门
  20. 编程题#4:Tomorrow never knows? C语言

热门文章

  1. 什么时候会出现user_objects的invalid_2021年的桃花运什么时候会出现
  2. Matlab的Gpu加速(CUDA cudnn)
  3. 页面驱动page object model
  4. 人工智能和人类智能的本质区别是什么?
  5. 2021-09-13 文字常量和常变量
  6. 【图形学】抗锯齿方法总结
  7. 学校计算机管理工作计划,计算机教室管理工作计划.doc
  8. 2.4G wifi 的频道/信道 20M 40M的概念,区别
  9. 北京某互联网公司鼓励员工尽量住公司
  10. PIL.Image.DecompressionBombError: Image size (211025920 pixels) exceeds limit of 178956970 pixels, c