ちょっと探した結果、整数前提の場合は以下のコードが最も簡潔ぽい。ただしあまり速くない(らしい)。

$val = 1234567890;
1 while $val =~ s/(\d+)(\d\d\d)/$1,$2/;
# 変換後 $val = "1,234,567,890" になる。

「perl 数値 3桁区切り」でググると、perlのコードとして一番上に出てくるのが間違った物だったりして困る。

Trackback

no comment untill now

Add your comment now