vim替换命令
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了vim替换命令相关的知识,希望对你有一定的参考价值。
1 语法:[range]s/source/target/[option]
2 range
range表示要替换的范围,想要全局替换的话,可以使用一个百分号.
:%s/xxx/xxxx
另外,小数点表示当前行,美元符号表示最后一行,数字表示范围.
:1,.s 替换第一行到当前行
:.,$s 替换当前行到最后一行
:1,$s 替换第一行到最后一行,相当于 :%s
3 source与target
表示源字符串与目标字符串,如
:1,.s/123/456
表示把第一行到当前行的首次出现的123替换成456,注意是首次出现,如果要替换某一行全部源字符串需要在后面加上
/g
另外,对于一些特殊字符比如小数点,斜杠,双引号等需要转义,方式是使用反斜杠,在需要转义的字符面前加一个反斜杠
如把
"123//"
替换为
‘123\‘
命令如下:
:s/"123//"/‘123\\‘/g
因为
"123//" 中
" 转义为 "
/ 转义为 /
‘123\‘ 中
‘ 转义为 ‘
转义为 \
4 option
选项如下:
/g 全局替换
/c 确认
/p 替换结果逐行显示
注意选项的组合结果是
/cg
/pc
这样的形式,而不是
/c/g
/g/p
这样的形式.
5 总结
全局替换的话,使用
:%s/source/target/g
局部替换的话,使用
:n,ms/source/target
n,m为行数,表示要替换的范围.
注意如果字符串需要转义要加上反斜杠.
以上是关于vim替换命令的主要内容,如果未能解决你的问题,请参考以下文章