当前位置:  开发笔记 > 开发工具 > 正文

vi搜索复制粘贴搜索副本

如何解决《vi搜索复制粘贴搜索副本》经验,为你挑选了1个好方法。

我只是想知道是否有人可以帮助如何使用vi执行以下操作.

我有一个文本文件,它可能包含类似的东西

start of text file:
--something1.something2--
--anotherThing1.something2--
end of text file:

如果我想取这行并通过搜索与第一次出现的[A-Za-z0-9]副本相匹配的任何内容转换为缓冲区,然后将其附加到第一个出现之前的同一行 -

start of text file:
--something1.something2.something1--
--anotherThing1.something2.anotherThing1--
end of text file:

是否有一个VI命令来执行此操作?

干杯本



1> stefanB..:
:%s/--\([a-zA-Z0-9]*\).\(.*\)--/--\1.\2.\1--/gc

或者没有要求确认每次更换:

:%s/--\([a-zA-Z0-9]*\).\(.*\)--/--\1.\2.\1--/g

将产生:

--something1.something2.something1--
--anotherThing1.something2.anotherThing1--

从:

--something1.something2--
--anotherThing1.something2--

如果你想复制' - '之后的第一个单词,直到第一个'.'.并追加'.' 和最后一个' - '之前找到的单词.

使用vim.

评论意见:

有人提到当有多个单词时它不起作用等等.我测试了以下内容:

start of text file:
--something1.something2.something3.something4.something5.something6--
--anotherThing1.something2.anotherThing3.anotherThing4.anotherThing5--
end of text file:

用以上表达式替换后:

start of text file:
--something1.something2.something3.something4.something5.something6.something1--
--anotherThing1.something2.anotherThing3.anotherThing4.anotherThing5.anotherThing1--
end of text file:

推荐阅读
家具销售_903
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有