码迷,mamicode.com
首页 > 其他好文 > 详细

使用正则表达式每3位数字加逗号

时间:2016-07-09 14:47:01      阅读:145      评论:0      收藏:0      [点我收藏+]

标签:

总结一下,在数字中增加逗号的方法,把一般情况都考虑之中.提供思路给大家参考下

 

#!/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

使用正则表达式每3位数字加逗号

标签:

原文地址:http://www.cnblogs.com/mcshell/p/5655797.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!