Vim的查找


查找

  • 查找文本
  • 搜索模式
  • 全局搜索

查找文本

常用命令(在命令模式下)

命令说明
/abc从光标所在位置向前查找字符串 abc
?abc从光标所在位置向后查找字符串 abc
n向同一方向重复上次的查找指令
N向相反方向重复上次的查找指定
/^abc查找以 abc 为行首的行
/abc$查找以 abc 为行尾的行

注意事项

Pattern not found
如果在文件中并没有找到所要查找的字符串,文件底部会出现 "Pattern not found" 提示

大小写敏感
在查找过程中需要注意的是,要查找的字符串是严格区分大小写的,如查找 "shenchao" 和 "ShenChao" 会得到不同的结果。如果想忽略大小写,则输入命令 ":set ic";调整回来输入":set noic"

特殊字符
如果在字符串中出现特殊符号,则需要加上转义字符 "\"。常见的特殊符号有 \、*、?、$ 等。如果出现这些字符,例如,要查找字符串 "10$",则需要在命令模式中输入 "/10\$"。

小技巧

  • 使用/或者?进行前向或者反向搜索
  • 使用n或b进行上一个或下一个跳转
  • 使用*或#进行当前字符或单词的匹配;n定位到下一个,N定位到上一个

搜索模式

常用命令(在命令模式下)

命令说明
:/pattern搜索包含pattern的行
:/pattern/d删除下一个包含pattern的行
:/pattern/+d删除下一个包含pattern的下一行,+d就是+1d,也可以是n
:/pattern/,/pattern2/d从第一个包含pattern的行删除到第一个包含pattern2的行
:.,/pattern/mn将当前行到第一个包含pattern的行之间的文本放到第n行之后

全局搜索

常用命令(在命令模式下)

命令说明
:g/pattern查找移动到文件中最后一次出现pattern的地方
:g/pattern/p查找并显示文件中包含pattern的地方
:g!/pattern/nu查找并显示文件中不包含pattern的地方,并显示行号
:1,10g/pattern/p查找并显示第1行到第10行之间包含pattern的地方

g不光可以用于全局搜索,也可以用于全局替换

声明:Rock 版权所有,内容均为原创,欢迎转载。

转载:转载请注明原文链接 - Vim的查找


我是一个程序员,致力于网页开发,我还很年轻,什么也不懂。