作者: Bruce. | |
日時: 2008/1/07(01:28) |
Bruce.です。 閑舎 さんは書きました (2008/01/06 0:54): > $str =~ s/^(($ASCIIL|$TWOBYTES|$THREEBYTES)*)’/\1\'/g; > print "$str\n"; > > ですね($EUCKANJI はまず使わないだろうということで)。 いろいろ事情があるとは思いますが、後々のことを考えれば入力を取り込んだ ところでPerlのUnicode文字列に変換するか、せめてUTF-8に変換してしまって 内部での処理はUTF-8で行い、出力するときに変換するなどするようにして しまった方が良いと思います。 UTF-8なら今-回みたいな文字間をまたいでマッチしてしまう問題もありえませんし。 UTF-8(Unicode)にするとこで別問題が出る可能性がありますが、その辺天秤に かけての判断ということで。 とりあえずは ・変換するためのオーバーヘッド ・ラウンドトリップ問題 くらいが思いつくところでしょうか。