in reply to Please help me print this hash.

Here's another way to comma'ify your numbers that avoids the two reversees by using substr, pos and look-around assertions in the regex.

knoppix@Microknoppix:~$ perl -E ' > sub add_commas > { > my $number = shift; > substr $number, pos $number, 0, q{,} > while $number =~ m{ (?<= \d ) (?= \d{3} (?: , | \z ) ) }xg; > return $number; > } > > say add_commas( $_ ) for qw{ > 1 > 12 > 123 > 1234 > 12345 > 123456 > 1234567 > 12345678 > 123456789 > 1234567890 > };' 1 12 123 1,234 12,345 123,456 1,234,567 12,345,678 123,456,789 1,234,567,890 knoppix@Microknoppix:~$

I hope this is of interest.

Cheers,

JohnGG