在一系列的行和列中搜索和替换

ale*_*oot 6 regex vim

我想应用搜索并替换仅在文本文件的给定范围的行和列中起作用的正则表达式模式,如下所示:

AAABBBFFFFBBBAAABBB
AAABBBFFFFBBBAAABBB
GGGBBBFFFFBHHAAABBB
Run Code Online (Sandbox Code Playgroud)

例如,我想在行范围1到2和第4列到第6行中用YYY替换BBB,然后获得此输出:

AAAYYYFFFFBBBAAABBB
AAAYYYFFFFBBBAAABBB
GGGBBBFFFFBHHAAABBB
Run Code Online (Sandbox Code Playgroud)

有没有办法用Vim做到这一点?

Ben*_*oit 11

:1,2 s/\%3cBBB/YYY/
Run Code Online (Sandbox Code Playgroud)

\%3c表示第三列(:help /\%c全局查看或更多:help pattern)