Scrapdiary

DesigningとEngineeringの架け橋

今さらですがJcodeですっきり見やすくなりました

久しぶりに仕事でPerlを書いた。いったい何年間使ってるんだ?っていうくらいずっとメンテナンスしてきたフォームの受付CGI。今さらですが一応strictとwarningsでチェックをかけて細かいところの作法を手直ししたのと、Jcodeモジュールを使って文字コードのコンバート周りを修正してみた。
jcode.plを使っていた頃だと、こまごま文字コードをコンバートしてから処理して戻して・・・みたいなメンドクサイことを普通にそこかしこでやっていた。

#Shift_JISにコンバートしてから半角カナを全角に
jcode::convert(\$input, 'sjis');
jcode::h2z_sjis(\$input);

#全角英数字を半角英数字へ変換(EUCでないとうまく動作しない模様)
jcode::convert(\$input, 'euc');
jcode::tr(\$input, '0-9A-Za-z', '0-9A-Za-z'); 

これを(ほんと今さらながら)Jcodeモジュールのコードに置き換えたので、だいぶすっきりしたと思うし見た目も分かりやすい。

my $j= Jcode->new(\$input)->tr('0-9A-Za-z', '0-9A-Za-z')->h2z->euc; 

OOP的なWYSIWYGを体感することが出来たので、感動。

今はEncodeモジュールの使用が一般的なんだと思うので、少しずつそちらも学んでいきたい。