中国語であることが知られており、UTF-8 でエンコードされたテキスト ブロックが与えられた場合、それが簡体字か繁体字かを判断する方法はありますか?
4860 次
2 に答える
4
これが機能するかどうかはわかりませんが、iconv を使用して、文字セット間で正しく変換されるかどうかを確認し、//TRANSLIT と //IGNORE を使用して同じ変換の結果を比較してみます。2 つの結果が一致する場合、文字セット変換で変換に失敗する文字は検出されていないため、一致するはずです。
$test1 = iconv("UTF-8", "big5//TRANSLIT", $text);
$test2 = iconv("UTF-8", "big5//IGNORE", $text);
if ($test1 == $test2) {
echo 'traditional';
} else {
$test3 = iconv("UTF-8", "gb2312//TRANSLIT", $text);
$test4 = iconv("UTF-8", "gb2312//IGNORE", $text);
if ($test3 == $test4) {
echo 'simplified';
} else {
echo 'Failed to match either traditional or simplified';
}
}
于 2010-11-03T00:07:55.290 に答える