pythonでひらがな、カタカナ判定をする

一覧をリストにしてinで比較してもいいんだけど、もうちょっとスマートにやりたい。
ユニコードとかアスキーとかをちゃんと勉強した人にとっては多分当たり前のことなんだと思う。

ひらがなの「も」
カタカナの「モ」

を判別する時、以下のように書くことが可能。

これなら簡単だが、実は「ぁ」などを判別できない

ordとchrをつかって、ひらがなの範囲を調べてみる。

ひらがなは実用的には「ゖ」が最後、ちゃんと全部取りたいなら「ゟ」まで取れば良さそう。
(「ゟ」は「より」と読むらしい。初めて知った。)

同様にして、カタカナの範囲も調べる。
‘゠’はダブルハイフンといって、外国人名などで使われるやつ。
(バスコ゠ダ゠ガマみたいなやつ)

こちらも、実用レベルなら「ヶ」が最後、伸ばし棒や中黒をカタカナとして判定したい、などなら「ヿ」までをカタカナにすればいい。
(「ヿ」はコトと読む合字)

ちなみに半角のカタカナは以下の通り。

半角用の句読点とか、長音記号とか、いろいろあってびっくりした。
「ᄀ」は「ヿ」の半角かと思ったら普通にハングルだった。難しい。

以上を踏まえて、判定するプログラムは以下の通り。

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です