每日一Vim(3)——替换

来源:互联网 发布:加工中心g76镗孔编程 编辑:程序博客网 时间:2024/06/05 07:37

转载:http://liuzhijun.iteye.com/blog/1827901,作者–zhijun

vim可以借用正则表达式来实现丰富的替换功能,她的基本语法是:
:[addr]s/源字符串/目的字符串/[option],我们可以看出addr和option是可以缺省不填的,他们各个字段的意思是:

  • [addr]代表检索范围,缺省表示当前行,1,10表示1到10行,%代表整个文件等价于1,.,代表当前行到文件末尾
  • s代表替换的意思
  • option代表操作类型,缺省只对第一个匹配的字符进行替换,g代表全局替换,c代表操作时确认,gc可以组合使用

以下提供几个例子:

:s/aa/bb/g       将光标所在行出现的所有包含 aa 的字符串中的 aa 替换为 bb:%s/aa/bb/g      将文档中出现的所有包含 aa 的字符串中的 aa 替换为 bb:12,23s/aa/bb/g  将从12行到23行中出现的所有包含 aa 的字符串中的 aa 替换为 bb:%s/^/#/         全文的行首加入 # 字符,批量注释的时候非常有用:%s= *$==        将所有行尾多余的空格删除:g/^$/d          这里的g表示对文章中所有符合要求字符串执行替换操作,^表示行首,$表示行尾,整个意思是:将所有的空行删除
0 0
原创粉丝点击