半角カナが含まれていたらエラーを出すのはちょっと不親切だ。半角カナを自動的に全角カナへ変換したい。半角カナを全角カナへ変換する機能は、Jcodeモジュールが用意してくれている。
サンプル
;# ;#半角カナを全角カナへ ;# use Jcode; print Jcode->new('アイウエオ', 'sjis')->h2z->sjis;
「アイウエオ」の部分を半角カナに直して実行する。
「h2z」が変換をしているメソッド、最後の「sjis」とある部分が最終的に返却される文字コードとなる。new
をする際にsjis
といった具合に文字コードを指定しているのは、半角カナが含まれている場合に文字コードの自動判定が期待通りに動作しない事への対策である。よって、文字列がEUCであればeuc
にしておく。