vim中的替换 | 您所在的位置:网站首页 › vim多行替换 › vim中的替换 |
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全局替换命令并要求对替换字符串命令进行确认操作 1、将所有的Vim字符串替换为vim字符串 :1,$s/Vim/vim/gc 会出现提示”replace with foo(y/n/a/q/l/^E/^Y)?”,询问是否确认执行 或者 :%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全局替换为lines3、将从2行到10行中出现的所有包含line的字符串中的line替换为lines :2,10s/line/lines/g表示将2~3行的line全局替换为lines4、全文的行首加入//字符,批量注释时非常有用 :%s/^/\/\//表示在全文范围行首替换插入//,注意在Vim中需要将/进行转义后才可以替换5.将所有行尾多余的空格删除 :%s= *$==表示全局替换行尾的一个或多个空格,更多正则表达式的说明可以参考Vim正则表达式 |
CopyRight 2018-2019 实验室设备网 版权所有 |