我有一个如下的数据文件:
----------------------------
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/g
Enterjma:.s/ /
Ctrl+vEnter/g
EnterCtrl+v'axgg$p'adG
会做到这一点.:)
好吧,让我们打破它:
:.s/ /
Ctrl+vEnter/g
Enter:在当前行()上,在所有位置().
中用s
空格替换()空格(/ /
),后跟一个回车符SpaceCtrl+vEnter/
(g
).光标现在应该在最后一个字母的行上(e
在示例中).j
:向下一行(至A B C D E
).ma
:将标记设置a
为当前位置...因为我们想稍后参考此位置.:.s/ /
Ctrl+vEnter/g
Enter:做同样的替换,但没有Space.光标现在应该在最后一个字母的行上(E
在示例中).'a
:使用块选择从当前光标位置(E
)中选择要标记a
(我们在上面的步骤3中设置).x
:剪切选择(进入"
寄存器).gg
:将光标移动到第一行.$
:将光标移动到行尾.p
:在光标位置后粘贴先前剪切的文本.'a
:将光标移动到a
标记(在步骤3中设置).dG
:删除从光标位置到文件末尾的所有内容(底部留下的空行).PS我希望了解一个"内置"解决方案,但直到这个时候......
归档时间: |
|
查看次数: |
2161 次 |
最近记录: |