Vi中是进行多行替换

1 进行多行替换前首先要决定在哪几行替换?

  • 先选定多行,再按':',则默认命令是在选中的行进行操作。
    比如先‘v’进入visual模式,选定这几行。然后按‘:’进入命令模式,再象下面说的打上要进行的替换操作,点击‘RET’。
  • 先点击‘:’,进入命令模式再手动写需要操作哪几行。
    比如:1,4---代表对1到4行进行替换。4,$----代表对4到行尾进行替换。

2 如何进行替换?

基本命令形式:range  s/.../.../g  -----其中‘...’代表省略号。高级的用法需要学习Linux里面的正则表达式。
下面说几种比较特殊常用的形式:

  • 替换行首:s/^/.../g   ---------在行首添加上自己想要的内容。
  • 替换行尾:s/$/.../g
  • 假设我想把‘;’后面的东西去掉:s/;.*/;/g
  • 如果我想asm文件中;的注释变为c中后面由//注释。即;变为/* ...*/,但是前后的内容不变'...'是;后面的东西。
    s/ ;\(.*\) / \/\* \1 \*\/ /g ---这里为了清晰,我用空格分割了一下,其实真实运行的代码理应没有空格。
    红色----在第一个被替换里面为\(.*\)'\'为了转义,'.*'是通配符代表所有的,然后在替换用\1它被原样保留,不要动它。
    蓝色----蓝色部分虽然看起来复杂,但是比较容易理解,就是利用转义字符表示/* ...*/
posted @ 2011-09-02 16:20  Jack204  阅读(7055)  评论(0编辑  收藏  举报