如何使用Perl的'sprintf'删除前导零

时间:2014-03-26 13:52:04

标签: perl

如何使用sprintf而不是0.500?

打印一半.500

以下两个陈述均为0.500。

my $half = 1/2;

print sprintf("%0.3f\n", $half);
print sprintf("%.3f\n", $half);

1 个答案:

答案 0 :(得分:6)

单独使用sprintf无法做到这一点。您可以使用您拥有的代码,然后使用您喜欢的任何方法删除前导零(正则表达式很容易)。

my $half = 1 / 2;
my $format = sprintf("%.3f", $half);
$format =~ s/^0//;
print "$format\n";