我注意到我可以在vim中使用正则表达式函数和搜索,我可以通过设置incsearch来查看hilights .但这不适合搜索和替换像这样的查询:
:%s/std::regex\s\([_a-zA-Z]*\)(/regex_t \1 = dregc(/gc
当它真正起作用时,那个让我感到惊讶.
是否存在vim的设置或插件,如incsearch,但更好的是,会在您键入时突出显示替换查询?只是突出显示匹配将是非常整洁,但将新旧字符串放在彼此旁边的不同突出显示颜色将是一个天赐之物,因为我可能不确定反向引用.
不是你的问题的直接答案,但传统上在Vim你首先制作你的搜索正则表达式,如:
/regex
然后你点击enter执行它.设置:set hlsearch
并:set incsearch
使其易于在视觉上看到.然后你可以这样做:
:%s//replace
由于没有指定的搜索,:%s
(小号作用于ubstitute %
,一个shorctut这意味着文件中的所有行)将使用您指定的最后一个搜索词.
更进一步,你可以做到
:%s/~/replace2
这取代了你的最后一次替换(在这种情况下replace1
)replace2
.
不相关的,将它放入您的内容可能对您有用.vimrc
:
set gdefault
默认情况下,这将使全部替换为全局,因此您不需要/g
在每个:%s
命令之后使用该标志.
归档时间: |
|
查看次数: |
625 次 |
最近记录: |