プログラマでありたい

おっさんになっても、プログラマでありつづけたい

Perlで数字を3桁ごとにカンマ区切り

Perlクックブックに載っていた方法。

正規表現では文字列の先頭から処理したほうが、最後から処理するよりずっと簡単だ。

激しく同意。この本の素晴らしい所は、実際の手法のみならず、考え方が載っているところ。
Perlに限らずプログラムの教科書として使えます。

sub commify {
  my $text = reverse $_[0];
  $text =~ s/(\d\d\d)(?=\d)(?!\d\.)/$1,/g;
  return scalar reverse $text;
}