概要 Unicodeには「ここからここは平仮名の領域」、「ここからここは漢字の領域」のように文字種に応じてブロックが決められている。 それらを利用すれば解析対象の文字列が「何語で書かれているか」をある程度判定できたり、エンコードがどれが一番確からしいか確認できたりする、かもしれない。 サンプルコードはJava1.6を使用。 JavaのUnicodeBlockによる平仮名・カタカナ・漢字の判定例 JavaのUnicodeBlockを使用すると、対象の文字列が平仮名であるかなどが判定できます。実行する前にjava.text.Normalizer.normalize使ってNFKCで正規化しておくと紛れが減るかもしれません。 // 平仮名判定(UnicodeBlock.HIRAGAN) System.out.println( UnicodeBlock.of( 'あ' ) == UnicodeBlo