告诉vim将逗号添加到数字,例如将31415926更改为31,415,926

Tan*_*ett 6 vim

我有一个非常大的数字(长几百个数字),我想使用vim以适当的方式为数字添加逗号,即在每组三位数后,从右向左移动.我怎样才能有效地做到这一点?

FDi*_*off 5

这里取

替换命令,在正确的位置添加逗号。

:%s/\(\d\)\(\(\d\d\d\)\+\d\@!\)\@=/\1,/g
Run Code Online (Sandbox Code Playgroud)

这将使用零宽度的超前查询来匹配没有跟在后面的三个数字组成的任意数字。(或3n + 1个数字)

因此匹配的数字用标记^。匹配后,这些将替换为逗号。

31415926
 ^  ^
Run Code Online (Sandbox Code Playgroud)

替换为

31,415,926
Run Code Online (Sandbox Code Playgroud)