一般在vim中,进行字符串替换的方式是使用s来替换,举个例子来说:
加入一个文件内容如下:
hello abc hello
hello
hello abc hello hello
hello
如果使用goodbye来替换hello:
%s/hello/goodbye/g
那么我们预期的内容会是:
goodbye abc goodbye
goodbye
goodbye abc goodbye goodbye
goodbye
但是,它实际的内容是:
goodbye abc hello
goodbye
goodbye abc hello hello
goodbye
也就是说,参数g每行最多替换1次,想要达到实际的目的,需要使用命令应该是:
%s/hello/goodbye/gg
两个g参数,能够替换所有内容,在行内,能进行多次替换。