早教吧 育儿知识 作业答案 考试题库 百科 知识分享

vim如何用正则表达式把数字换成相同长度的空格呢?比如如下1.23451.21.32.32.1232.4如何变成下面的结果呢?1.21.21.32.32.12.4我使用:%s/\(\.\d\)\d\{1,}/\1/g也就是把小数点后开始的第一个数字以后

题目详情
vim如何用正则表达式把数字换成相同长度的空格呢?
比如如下
1.2345 1.2
1.3 2.3
2.123 2.4
如何变成下面的结果呢?
1.2 1.2
1.3 2.3
2.1 2.4
我使用:%s/\(\.\d\)\d\{1,}/\1/g 也就是把小数点后开始的第
一个数字以后的数字全部都删除,但是如果能把小数点后的数字换成
等长度的空格就好呢?其实有大量的这样的数据,我只是列举了一小
部分,所以这个只能使用正则表达式.
使用上面的命令得到的结果
但是会变成下面的结果:
1.2 1.2
1.3 2.3
2.1 2.4
这个问题就是:
这个还需要我自己去排版增加空格,真的很麻烦.不知道怎么样用正则表达式
把小数点后开始的第一个数字以后的数字全部都换成等长度的空格呢?
▼优质解答
答案和解析
你那个不好用
用我的吧
%s/\.\d\zs\d*\s*/\t\t/g
将后面的数字和空格换成\t\t