Vim/sed/awk使用增量整数查找和替换

ma1*_*w28 4 ruby vim awk sed macvim

我有一个降价文件,其中包含[this] [],[that] [],...和[其他] []等字样.我知道如何在MacVim中找到这些单词,但是如何用[this] [1],[that] [2],...和[其他] [n]替换它们,其中n是26案件?

如果它们被证明比使用MacVim更简单,我也会接受使用sed或awk甚至Ruby的解决方案.

ZyX*_*ZyX 6

perl -p -i -e 's/(\[.*?\])\[\]/"$1\[".(++$i)."]"/ge' /path/to/file
Run Code Online (Sandbox Code Playgroud)

Vim的:

:let g:lastcount=0
:function PlusPlus()
  let g:lastcount+=1
  return g:lastcount
  endfunction
:%g/./s/\V[\.\{-}][\zs\ze]/\=PlusPlus()/g
Run Code Online (Sandbox Code Playgroud)