sta*_*tox 7 regex vim substitution
我最近为vim找到了一个替代命令,其中作者被这样的/替换!::%s!foo!bar我不明白与传统的区别:%s/foo/bar.
我搜索了一些关于这种语法的文档,但是我找不到任何相关内容,所以我试着自己试验,我无法弄清楚这两种形式之间的区别.这是我发现的:
/和!在同一个命令.例如::%s/foo!bar会失败.!可用于包括a的模式/.例如,如果我想更换</与%我的文件,我可以做:%s!</!%!g,而不是:%s/<\//%/g:我不需要逃跑/的第一个命令,但我会感到惊讶,如果这是唯一使用的!./并且有效地工作!但是因为我不是一个正则表达式大师,所以我不确定这一点.所以我的问题是:是什么样的区别/,并!在VIM替代时,我应该使用一个,而不是其他?
tiv*_*ivn 11
两者都可以使用,只要它们一致(不混合).通常/是使用.但是,如果要替换的字符串包含多个字符串,则可以使用其他字符/.例如 :
:%s!/usr/local/bin!/usr/bin!
:%s:/usr/local/bin:/usr/bin:
:%s,/usr/local/bin,/usr/bin,
Run Code Online (Sandbox Code Playgroud)