VIM字符串替换

作者: badtboy 分类: VIM 发布时间: 2023-01-02 17:47

vi/vim 中可以使用 :s 命令来替换字符串。以前只会使用一种格式来全文替换,今天发现该命令有很多种写法(vi 真是强大啊,还有很多需要学习),记录几种在此,方便以后查询。

:s/vivian/sky/

替换当前行第一个 vivian 为 sky

:s/vivian/sky/g  

替换当前行所有 vivian 为 sky

:n,$s/vivian/sky/  

替换第 n 行开始到最后一行中每一行的第一个 vivian 为 sky

:n,$s/vivian/sky/g  

替换第 n 行开始到最后一行中每一行所有 vivian 为 sky. n 为数字,若 n 为 .,表示从当前行开始到最后一行

:%s/vivian/sky/  

等同于 :g/vivian/s//sky/) 替换每一行的第一个 vivian 为 sky

:%s/vivian/sky/g  

(等同于 :g/vivian/s//sky/g) 替换每一行中所有 vivian 为 sky 可以使用 # 作为分隔符,此时中间出现的 / 不会作为分隔符

:s#vivian/#sky/#  

替换当前行第一个 vivian/ 为 sky/

:%s+/oradata/apras/+/user01/apras1+  

(使用+ 来 替换 / ): /oradata/apras/替换成/user01/apras1/