Vim 把这两个柱子换成几行?
我从网页复制粘贴了一些数据:Vim 把这两个柱子换成几行?,vim,Vim,我从网页复制粘贴了一些数据: x y 0 9 2 22.6 4 44.2 5 62.1 7 96.9 8 113.4 10 133.4 11 137.6 15 148.4 17 149.3 我想对数据进行转置和轻微转换,例如: x = 0,2,4,... y = 9, 22.6, 44.2... 我知道如何使用v模式在每一列后面加逗号,但我不知道当我有两位数或一列字符长
x y
0 9
2 22.6
4 44.2
5 62.1
7 96.9
8 113.4
10 133.4
11 137.6
15 148.4
17 149.3
我想对数据进行转置和轻微转换,例如:
x = 0,2,4,...
y = 9, 22.6, 44.2...
我知道如何使用v模式在每一列后面加逗号,但我不知道当我有两位数或一列字符长度混合时该怎么做
我更关心的是如何转置,如果这是我想要的命令的话
如何将数据转换为所需的格式:
x = 0,2,4,...
y = 9, 22.6, 44.2...
我的方法是使用视觉块模式,并使用
Ctrl
+v
和
应用J
命令,并使用替换进行清理。首先选择
在可视块中选择第二列并将其删除,然后将其粘贴到x列下方:
x
0
2
4
5
7
8
10
11
15
17
y
9
22.6
44.2
62.1
96.9
113.4
133.4
137.6
148.4
149.3
然后,您可以在每个块上执行vipJ
,以选择该数据并将其放在一个块上
行(仅供参考:vipJ
将进入v
isual模式,选择i
nsidep
aragraph,
然后,J
加入这些行):
快速替换:s/\s\+/,/g
可以用逗号替换空格:
, x, 0, 2, 4, 5, 7, 8, 10, 11, 15, 17,
, y, 9, 22.6, 44.2, 62.1, 96.9, 113.4, 133.4, 137.6, 148.4, 149.3
然后,您只需清除多余的逗号,并添加=
符号,然后删除
空行等:
x = 0, 2, 4, 5, 7, 8, 10, 11, 15, 17
y = 9, 22.6, 44.2, 62.1, 96.9, 113.4, 133.4, 137.6, 148.4, 149.3
如果有许多列,您可能不想重复此过程
以上每一个。。。在这种情况下,您可能可以将上述内容记录为
以可重复的方式执行宏
如果需要,可以运行外部命令(在视觉选择上,或
通过一个范围)
”我的方法是使用视觉块模式,并使用Ctrl
+v
和
应用J
命令,并使用替换进行清理。首先选择
在可视块中选择第二列并将其删除,然后将其粘贴到x列下方:
x
0
2
4
5
7
8
10
11
15
17
y
9
22.6
44.2
62.1
96.9
113.4
133.4
137.6
148.4
149.3
然后,您可以在每个块上执行vipJ
,以选择该数据并将其放在一个块上
行(仅供参考:vipJ
将进入v
isual模式,选择i
nsidep
aragraph,
然后,J
加入这些行):
快速替换:s/\s\+/,/g
可以用逗号替换空格:
, x, 0, 2, 4, 5, 7, 8, 10, 11, 15, 17,
, y, 9, 22.6, 44.2, 62.1, 96.9, 113.4, 133.4, 137.6, 148.4, 149.3
然后,您只需清除多余的逗号,并添加=
符号,然后删除
空行等:
x = 0, 2, 4, 5, 7, 8, 10, 11, 15, 17
y = 9, 22.6, 44.2, 62.1, 96.9, 113.4, 133.4, 137.6, 148.4, 149.3
如果有许多列,您可能不想重复此过程
以上每一个。。。在这种情况下,您可能可以将上述内容记录为
以可重复的方式执行宏
如果需要,可以运行外部命令(在视觉选择上,或
通过一个范围)'Hi,谢谢,我得到了vipJ
(以前从未使用过,那里发生了什么?)然后当你说“越过(e)后面的另一列:”我不知道怎么做?需要一些帮助吗?我在更新后的回答中做得更好。嗨,谢谢,我得到了vipJ
(以前从未使用过,那里发生了什么?)然后当你说“越过(e)后面的另一列:”我不知道怎么做?需要一些人手在这里我做的事情在更新的答案更好的顺序