首页 > 代码库 > substitute 命令与 global 命令

substitute 命令与 global 命令

 

他们是很强大的EX命令:

 

substitute的格式:

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

 

其中的patttern 指的是正则表达式的匹配;

flags:为标志位:

技术分享

 

注意:

1.  所以呢,在缺省情况下,substitute命令仅仅作用于当前行, 而且只会修改第一处匹配;

2. 第二点: 当查找留空时,VIM 会重用上次的查找模式;所以,可以分开写成的下面的形式:

:/{pattern}
:[range]s[ubstitute]//{string}/{flag}

 

替换域中作用寄存器的内容:

方法1: 使用ctrl-r{register}方法,就可以把编辑模式下把寄存器里的内容放入;

方法2:替换域中出现 \= 时将指示VIM执行一段表达式脚本。在VIM脚本中,可以用@{寄存器}来引用寄存器的内容,所以呢, 下面就可以实现:

:[range]s[ubstitute]/{pattern}/\=@{寄存器}/{flags}
 
 
 

Global 命令:

使用方法:

:[range] global[!] /{pattern}/ [cmd]

表示:在指定的匹配行上执行指定的 cmd;

 

其中,用 global! 或 vglobal 表示没有匹配到指定模式的行上执行[cmd].

global 可以略写为g;    vglobal 可以略写为v;

 

 

 

 

 

其它:

vim中的宏;

模式;

工具: 通过ctags 建立索引,用于浏览源代码;

自动补全;

substitute 命令与 global 命令