Perlクックブックに載っていた方法。
正規表現では文字列の先頭から処理したほうが、最後から処理するよりずっと簡単だ。
激しく同意。この本の素晴らしい所は、実際の手法のみならず、考え方が載っているところ。
Perlに限らずプログラムの教科書として使えます。
sub commify {
my $text = reverse $_[0];
$text =~ s/(\d\d\d)(?=\d)(?!\d\.)/$1,/g;
return scalar reverse $text;
}
Perlクックブックに載っていた方法。
正規表現では文字列の先頭から処理したほうが、最後から処理するよりずっと簡単だ。
激しく同意。この本の素晴らしい所は、実際の手法のみならず、考え方が載っているところ。
Perlに限らずプログラムの教科書として使えます。
sub commify {
my $text = reverse $_[0];
$text =~ s/(\d\d\d)(?=\d)(?!\d\.)/$1,/g;
return scalar reverse $text;
}