Perlで文字列の文字コードを判別し、断定出来ない場合は諦める方法

カテゴリー:Perl・Javascript・python、サーバー管理メモ(記事数:83)



↑B


2012.10.07

Perlで文字列の文字コードを判別し、断定出来ない場合は諦める方法
Tips for judging character code in Perl

use Encode::Guess qw/sjis euc-jp/;
my $enc = guess_encoding($判別するテキスト);
if (ref(\$enc) eq 'SCALAR'){諦める場合}
else{1つに絞れた場合
my $euc2=Encode::Guess->guess($判別するテキスト)->name;
if ($enc2 eq 'utf8'){・・・・・};
if ($enc2 eq 'euc-jp'){・・・・・};
}

・guess_encodingは失敗した場合はスカラーで「utf or shift-jis」とか「no appropriate encode」とか返すが、成功した場合に何返しているか分からない。
・guessは結果を事前にリストした文字列で返してくれるが判別に失敗するとdieする。
なので仕方なく2回判別しています。動けばいいです。

Category:Perl・Javascript・python、サーバー管理メモ



コメント

いいっすね!=1

名前 ↑B

コメント(※改行は省略されます)

※3回以上の連続書き込み不可
この記事のアクセス数:


→カテゴリー:Perl・Javascript・python、サーバー管理メモ(記事数:83)
アクセス数の多い記事(過去1ヶ月)

すべて見る