简体字,繁體字,日本の漢字の異体字リスト

プレーンテキスト形式中国語辞書を grepする時に日本漢字を使いたいと思って調べてみました。

簡体字から繁体字へのテーブル

簡体字から日本の漢字への対応表を作るには – 別館 子子子子子子(ねこのここねこ)はてブロ部

引用した上のブログにも近い話題があります。このようにまあまあ良く聞く話かと思います。

なんとUnicodeの本家サイトに以下のファイル名で置いてあるとの説明を見つけ驚き!

Unihan_Variants.txt kSemanticVariant, kSimplifiedVariant, kSpecializedSemanticVariant, kTraditionalVariant, kZVariant

UAX #38: Unicode Han Database (Unihan)

まずはこのファイルを展開してみます。

$ curl --silent http://www.unicode.org/Public/UNIDATA/Unihan.zip | 
  jar xv
 inflated: Unihan_DictionaryIndices.txt
 inflated: Unihan_DictionaryLikeData.txt
 inflated: Unihan_IRGSources.txt
 inflated: Unihan_NumericValues.txt
 inflated: Unihan_OtherMappings.txt
 inflated: Unihan_RadicalStrokeCounts.txt
 inflated: Unihan_Readings.txt
 inflated: Unihan_Variants.txt

このファイル中には漢字は16進で書かれています。変換するコードを探したら以下に見つかりました。

for line in open(“Unihan_Variants.txt”):

rime-tool/variant.py at master · osfans/rime-tool

変換してみます。何も出力は無いですが正常に出力ファイルが作成されました。

$ curl --silent \
  https://raw.githubusercontent.com/osfans/rime-tool/master/tools/Unihan/variant.py \
  | python3

そして”広い”の”広”の漢字でgrepします。この漢字は日本語、大陸中国語、台湾中国語の3種類があります。

$ grep 広 unihan-variant.txt
広      廣
$ grep 廣 unihan-variant.txt
广      廣
広      廣
廣      广

うむむ。僕的には以下の3行を期待してました。

广      廣 広
広      廣 广
廣      广 広

その期待が正しいものかどうかは分かりませんが、ともかく使いやすくするために unihan-variant.txt から上記のような完全なリストを全ての異体字について作成しようと方法を考えてます。

One thought on “简体字,繁體字,日本の漢字の異体字リスト

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google photo

You are commenting using your Google account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s