Vim在替代命令中使用感叹号是什么

Statox

我最近找到了vim的替代命令,其中的作者已被这样的命令/替代!:%s!foo!bar我不了解与传统的区别:%s/foo/bar

我搜索了有关此语法的一些文档,但是没有找到任何相关的内容,因此我尝试自己进行实验,无法清楚地找出这两种形式之间的区别。这是我发现的:

  • 你不能混用/!在同一个命令。例如::%s/foo!bar会失败。
  • 该符号!对于包含在内的模式很有用/例如,如果我想在文件中替换</%,我可以:%s!</!%!g代替:%s/<\//%/g:我不需要/在第一个命令中转义,但是如果仅使用,我会感到惊讶!
  • 某些正则表达式似乎会失败/并可以正常工作,!但由于我远不是正则表达式大师,因此我不确定这一点。

所以我的问题是:是什么样的区别/,并!在VIM替代时,我应该使用一个,而不是其他?

蒂文

两者都可以使用,只要它们是一致的(不混合)。通常/使用。但是,如果要替换的字符串包含多个,则可以使用其他字符/例如 :

:%s!/usr/local/bin!/usr/bin!
:%s:/usr/local/bin:/usr/bin:
:%s,/usr/local/bin,/usr/bin,

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章