Vim可以在尾行模式下使用:substitute命令将指定的字符串替换成其他目标字符串。
通常我们可以使用该命令的缩写格式:s进行来进行vim字符串替换操作
一、Vim替换字符串命令的语法
Vim替换字符串命令的基本语法是 :[range]s/目标字符串/替换字符串/[option],其中range和option字段都可以缺省不填。
下面介绍VIM替换字符串各个变量的含义:
range:表示搜索范围,默认表示当前行;
range字段值1,10表示从第1到第10行;
%表示整个文件(相当于1,$);
而.,$代表从当前行到本文件的末尾
s:substitute的简写,表示执行替换字符串操作;
option:表示操作类型,默认只对第一个匹配的字符进行替换;
option字段值g(global)表示全局替换;
c(comfirm)表示操作时需要确认;
i(ignorecase)表示不区分大小写;
vim替换字符串的这些选项可以组合使用
二、Vim替换命令举例
vim全局替换命令并要求对替换字符串命令进行确认操作
将所有的Vim字符串替换为vim字符串
1,$s/Vim/vim/gc 会出现提示”replace with foo(y/n/a/q/l/^E/^Y)?”,询问是否确认执行
待选择操作的含义包括:
y:确认执行这个替换将将所有Vim替换成vim;
n:取消这个本交Vim替换命令的操作;
a:执行本次所有替换字符串操作且不再询问;
q:退出当前vim字符串替换操作而不做任何改动;
l:替换完当前匹配点后退出(last)
Ctrl + E:向上翻滚一行
Ctrl + Y:向下翻滚一行
2 将光标所在行出现的所有包含line的字符串中line替换为lines
:s/line/lines/g表示将光标所在当前行的line全局替换为lines
3将从2行到10行中出现的所有包含line的字符串中的line替换为lines
:2,10s/line/lines/g表示将2~3行的line全局替换为lines
4。全文的行首加入//字符,批量注释时非常有用
:%s/^/\/\//表示在全文范