VIM的全局替换

昨天用到全局替换,网上查了一个命令

:s/old_string/new_string/g

实际中却没有达到效果,原来是要用

:%s/old_string/new_string/g


解释下这个命令,s就是substitute,替换的意思,命令模式为

:[range]s[ubstitute]/{pattern}/{string}/[flags] [count]

可以在vim中查看帮助手册,具体做法是在命令行模式下输入 h substitue就可以看到了。

先解释下为什么要加%号吧。

没有%号,只有g,只是在一行内替换,就是old_string所在的一行所有的替换,相当于水平的一个全局替换,而%表示纵向的一个全局替换,所以两个都有才是我需要的整篇文档的替换。以前总是觉得这个命令太长,好复杂,理清楚之后就清晰多了。其实想想设计这些程序的人也不会想用一个复杂的命令来操作的。所以理解才是记忆的王道。


写几个可能还要经常用到的替换命令吧。

就是最后一个flag,个人觉得会比较常用,n表示一个统计,不会去真正替换,会显示有几个;把g改为gc则会在每次替换时都让你做个选择,具体选择看提示就可以了。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值