
Perl offers many ways to commafy a number. That is, insert commas every three number for integers larger than 999. Here is my commafy routine:
sub commafy { my $num = shift; my $new = ""; while ($num =~ s/(?<=d)(d{3})$//g) { $new = ",$1$new"; } $new = "$num$new"; return $new; }
It works backwards from right to the left. It uses the “new” look behind assertion in the regex. Works fine in Perl 5.8, and I think Perl 5.6.