我有一个字符串:
doCall(valA, val.valB);
在GVIM中使用正则表达式我想将其更改为:
valA = doCall(valA, val.valB);
我该怎么做呢?我使用%s
进行基本正则表达式搜索并在GVIM中替换,但这与我的正常用法略有不同。
由于
答案 0 :(得分:1)
您可以使用:
%s/\vdoCall\(<(\w*)>,/\1 = doCall(\1,/
\v
在正则表达式中启用“更多魔法” - 这里不是必需的,但我通常使用它来使表达式更简单。 <…>
匹配单词边界,中间部分与第一个参数匹配,并将其放在第一个捕获组中。替换使用\1
来访问该捕获组并插入右侧两个位置。