vim 搜索与替换

在 Vim 中搜索文本、正则匹配和批量替换

语法

/pattern 或 :%s/old/new/g

参数

参数说明示例级别
/pattern 向下搜索 /function 常用
?pattern 向上搜索 ?error 常用
n/N 下一个/上一个匹配 n 常用
:%s/old/new/g 全文替换 :%s/foo/bar/g 常用
:%s/old/new/gc 全文替换(逐个确认) :%s/var/let/gc 常用
*/# 搜索光标下的单词(向下/向上) * 进阶

示例

搜索关键词

/TODO
按 n 跳到下一个匹配

全文替换

:%s/oldName/newName/g
所有行所有匹配都替换

指定范围替换

:10,20s/foo/bar/g
只替换第 10-20 行

正则搜索

/\d\+\.\d\+
搜索小数(如 3.14)

常见错误

E486: Pattern not found 检查拼写,注意大小写(用 /\cpattern 忽略大小写)
搜索高亮不消失 执行 :noh 或 :nohlsearch 清除高亮

技巧

相关命令