在vim中,我想从print更改为print()以便
print XXX
到
print(XXX)
如果我跑
:%s/print /print\(/g
这个只完成了第一部分,如何替换一次?
答案 0 :(得分:2)
你需要捕捉中间部分才能跟踪它:
:%s/\vprint (\w+)/print(\1)/g
使用:
\v
:使用magic
模式(请参阅:h magic
)。这里主要是不必转义括号和+
(否则你要写print \(\w\+\)
)。print
(带尾随空格):简单匹配,您可能希望用\s+
替换空格以匹配多个空格(空格/制表符)(\w+)
:匹配一个或多个单词字符([0-9A-Za-z_]
,有关更多信息和类,请参阅:h /character-classes
)并捕获它(括号)/print(\1)
:这里的括号没有特殊含义,\1
指的是第一个被捕获的群体