加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

正则表达式 – gVim查找/替换为计数器

发布时间:2020-12-14 06:28:23 所属栏目:百科 来源:网络整理
导读:有没有办法在gVim搜索/替换中插入某种计数器变量的值? 例如转换此文件: SomeElement Id="F" ... /SomeElement Id="F" ... /SomeElement Id="F" ... / 到这个结果文件: SomeElement Id="1" ... /SomeElement Id="2" ... /SomeElement Id="3" ... / 我想象
有没有办法在gVim搜索/替换中插入某种计数器变量的值?

例如转换此文件:

<SomeElement Id="F" ... />
<SomeElement Id="F" ... />
<SomeElement Id="F" ... />

到这个结果文件:

<SomeElement Id="1" ... />
<SomeElement Id="2" ... />
<SomeElement Id="3" ... />

我想象这个命令会像:

:%s/^(s*<SomeElement Id=")F(".*)$/1<insert-counter-here>2/g

我正在使用最近的Windows构建,从他们提供的安装程序.我强烈不喜欢安装任何其他工具.

此外,我希望避免安装脚本来支持这一点,但我愿意,如果它是唯一的方法.

Vim wiki instructions似乎是最简单的解决方案(至少对我来说).

下面的示例用REPLACE_ [counter](REPLACE_1,REPLACE_2等)替换所有出现的PATTERN:

:let i=1 | g/PATTERN/s//='REPLACE_'.i/ | let i=i+1

要回答这个问题,可能看起来像这样:

:let i=1 | g/SomeElement Id="F"/s//='SomeElement Id="'.i.'"'/ | let i=i+1

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读