技巧88-认识substitute命令
substitute
命令允许先查找一段文本,再用另一段文本将其替换掉。命令语法如下:
:[range]s[ubstitue]/{pattern}/{string}/[flags]
[range]
对每一条Ex
命令都有效
利用标志位调整substitute
命令的行为
- 标志位
g
:使得substitue
命令可以在全局范围内执行。 - 标志位
c
:让我们有机会确认或拒绝每一次修改。 - 标志位
n
:会抑制正常的替换行为,即让Vim不执行替换操作,而只报告本次命令匹配的个数。 - 标志位
e
:屏蔽错误提示。 - 标志位
&
:让Vim重用上一次的标志位。
flag | 含义 | 例子 |
---|---|---|
g | 使得substitute命令在全局范围内执行 | 技巧89 |
c | 每处修改进行询问 | 技巧90 |
n | 抑制正常的替换行为 | 技巧86 |
e | 屏蔽错误提示 | - |
& | 指示Vim重用上一次substitute命令所用过的标志位 | 技巧93 |
替换域中的特殊字符
使用:h sub-replace-special
查看特殊字符的完整列表
部分常用符号
符号 | 描述 | 例子 |
---|---|---|
\r | 插入一个换行符 | - |
\t | 插入一个制表符 | - |
\ | 插入一个反斜杠 | - |
\1 | 插入第1个子匹配 | 技巧94 |
\2 | 插入第2个子匹配 | 技巧94 |
\0 | 插入匹配模式的所有内容 | - |
& | 插入匹配模式的所有内容 | - |
~ | 使用上一次调用:substitute时的{string} | 技巧93 |
\={Vim script} | 执行{Vim script}表达式;并将返回的结果作为替换{string} | 技巧95,技巧96 |