我想将符号“:”和“ - ”替换为文件第一列中的标签:
输入如下:
chr1:100-200 1 2 3e-4
chr2:300-400 4 5 6e-4
我希望输出为:
chr1 100 200 1 2 3e-4
chr2 300 400 4 5 6e-4
我知道如何通过“%s /:/ ^ I / g”进行全局替换,将“:”替换为选项卡。
但是因为有些条目的数字是科学记数法,例如3e-4,所以我不能只用“%s / - / ^ I / g”将“ - ”替换成标签。
有谁知道如何仅将替换指定给第一列?
感谢。
答案 0 :(得分:5)
如何不使用g
%s/-/^|/
答案 1 :(得分:4)
您可以使用" Ctrl + V",激活" VISUAL BLOCK"模式,选择要更改的列,按" c",进行更改,然后" Esc",它将应用于所有选定的列。
答案 2 :(得分:2)
如果问题只有e
,您可以使用%s/\([^e]\)-/\1^I/g
查找-
之前没有e
的前缀。
答案 3 :(得分:0)
对于 first 列的特殊情况,您确实可以不用g
标志。对于适用于任何列的常规解决方案,请使用<C-v>
(在Windows上通常为<C-q>
)建立块状视觉选择,然后使用{将替换限制为可视选择{1}} atom:
\%V