使⽤正则表达式每3位数字加逗号总结⼀下,在数字中增加逗号的⽅法,把⼀般情况都考虑之中.提供思路给⼤家参考下
#!/usr/bin/perl
use strict;
use warnings;
my$num = 1234556789;正则匹配逗号
#纯数据模式
$num =~ s/(?<=\d)(?=(\d{3})+$)/,/g;
print$num,"\n";
#带有⼩数点模式
$num = 123456.1234;
$num =~ s/(?<!\.\d)(?<=\d)(?=(\d{3})+\b)/,/g;
print$num,"\n";
#⼤于5位之后。。。
#\K 模式,可变长否定向后环视;\K容许在它之前的模式只匹配⽽不被替换。替换操作只对\K之后的字符串部分有效。
$num = 123456.12345;
$num =~ s/(?<!\.)(?:\b|\G)\d+?\K(?=(\d{3})+\b)/,/g;
print$num,"\n";
OUTPUT:
1,234,556,789
123,456.1234
123,456.12345
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论