学习 Vim 后,尝试进入 Vi(而不是 Vim)。
- Vim 有一个类似的lookabehind
/\(Not this\)\@<!$
,如何在 Vi 中做到这一点? - 如果我想在 Vim 中递归地向下搜索目录,我可以这样做
:vimgrep /\(Not this\)\@!$ -r *
,那么 Vi 呢? - 如果(1)和(2)在Vi中不可用,你如何实现它们?
请创建标签lookbehind
和regex
.
答案1
根据 vim 帮助 ( :help pattern-overview
),\@i
vi 不支持。
您可能可以枚举所有可能的组合来避免这种情况,或者找到不同的表达式。或者,我想你可以将这项工作交给一些外部工具或解释器,比如 perl。我检查了egrep——它不支持它。你在寻找什么?
出于兴趣,为什么你更喜欢 vi 而不是 vim?
答案2
我通常最终会在 $HOME 中安装完整版本的 vim,甚至在像 Solaris 站这样的 Unix 站上,最初只有旧的 vi。
否则,grep+egrep+$(),甚至是 Edd 建议的 perl,都可以在 shell 中实现这一目的。