我有一个如下的数据文件:
----------------------------
a b c d e .............
A B C D E .............
----------------------------
Run Code Online (Sandbox Code Playgroud)
但我希望它采用以下格式
----------------------------
a A
b B
c C
d D
e E
...
...
----------------------------
Run Code Online (Sandbox Code Playgroud)
在VIM或Perl中进行转换的最快方法是什么?谢谢.
基本上:.s/ /SpaceCtrl+vEnter/gEnterjma:.s/ /Ctrl+vEnter/gEnterCtrl+v'axgg$p'adG会做到这一点.:)
好吧,让我们打破它:
:.s/ /Ctrl+vEnter/gEnter:在当前行()上,在所有位置().中用s空格替换()空格(/ /),后跟一个回车符SpaceCtrl+vEnter/(g).光标现在应该在最后一个字母的行上(e在示例中).j:向下一行(至A B C D E).ma:将标记设置a为当前位置...因为我们想稍后参考此位置.:.s/ /Ctrl+vEnter/gEnter:做同样的替换,但没有Space.光标现在应该在最后一个字母的行上(E在示例中).'a:使用块选择从当前光标位置(E)中选择要标记a(我们在上面的步骤3中设置).x:剪切选择(进入"寄存器).gg:将光标移动到第一行.$:将光标移动到行尾.p:在光标位置后粘贴先前剪切的文本.'a:将光标移动到a标记(在步骤3中设置).dG:删除从光标位置到文件末尾的所有内容(底部留下的空行).PS我希望了解一个"内置"解决方案,但直到这个时候......