Vim可以在尾行模式下使用:substitute命令将指定的字符替换成其他目标字符,通常使用该命令的缩写格式:s进行操作

1.Vim替换命令语法

Vim替换命令的基本语法是 :[range]s/源字符串/目标字符串/[option],其中range和option字段都可以缺省不填。

字段含义
range表示搜索范围,默认表示当前行range字段值1,10表示从第1到第10行,%表示整个文件(相当于1,$),而.,$代表从当前行到文件末尾
ssubstitute的简写,表示替换
option表示操作类型,默认只对第一个匹配的字符进行替换option字段值g(global)表示全局替换,c(comfirm)表示操作时需要确认,i(ignorecase)表示不区分大小写这些选项可以组合使用

2.Vim替换命令举例

ssl

执行命令:1,$s/Vim/vim/gc会出现提示”replace with foo(y/n/a/q/l/^E/^Y)?”,询问是否确认执行

待选择操作的含义包括:

选项含义
y确认执行这个替换
n取消这个替换
a执行所有替换且不再询问
q退出而不做任何改动
l替换完当前匹配点后退出(last)
Ctrl + E向上翻滚一行
Ctrl + Y向下翻滚一行

将光标所在行出现的所有包含line的字符串中line替换为lines

:s/line/lines/g 表示将光标所在当前行的line全局替换为lines

ssl

将从2行到3行中出现的所有包含line的字符串中的line替换为lines

:2,3s/line/lines/g 表示将2~3行的line全局替换为lines

ssl

全文的行首加入//字符,批量注释时非常有用

:%s/^/\/\// 表示在全文范围行首替换插入//,/需要转义

ssl

将所有行尾多余的空格删除

:%s= *$==表示全局替换行尾的一个或多个空格,更多正则表达式的说明可以参考Vim正则表达式搜索

ssl

vim 技巧

vim 技巧(1) vim 入门教程(2) vim 三种操作模式(3) vim 光标移动(4) vim ctrl+s卡死(5) vim 重复操作命令(6) vim 多行操作(7) vim 配色方案整理(8) vim 安装插件管理器(9) vim 内容搜索(10) vim 替换命令(11) vim 自动补齐(12) vim 升级8.x版本(13)