我有一个包含这个词的文件:
字
执行此命令时:
:s/\(\w\)\+/#\1#/
我得到##
但据我所知\w
匹配一个角色。为什么我没有在反向引用它?
现在有了这个命令
:s/\(\w\)\{1,}/#\1#/
我得到#d#
。为什么它是最后一个角色而不是第一个?
VIM - Vi IMproved 7.4 Ubuntu 16.04 LTS
答案 0 :(得分:1)
我可以使用Vim 7.4.1689(随Ubuntu 16.04 LTS一起提供)重现这一点,但不再使用Vim 8.0.55。 :set re=1
(即切换回旧的正则表达式引擎)也解决了这个问题。所以,它似乎是新的正则表达式引擎中的一个错误,在此期间已被修复。