全角数字を半角数字に変換::Perl
全角数字を半角数字に変換。
取り掛かる前は標準の関数が用意されていると思っていました。
やってみたら、意外とてこずったので覚書。
解決方法::jcode.plを使う。
jcode.pl をインストール。
require ‘c:/installpath/jcode.pl’;
jcode::tr(\$zenkaku, ‘0123456789-’, ‘0123456789-‘);
この一行で、$zenkaku の数字が半角になる。
my $rtn = jcode::tr(\$zenkaku, ‘0123456789-’, ‘0123456789-‘);
とすると、 $rtnには、変換した文字数が代入される。
Unicode::Japaneseを使う方法やuse encoding を使う方法もある様子。
文字コードは奥が深い。
個人的には全角英数を半角英数に統合してくれると、このような悩みが
なくなるのでうれしい。(無理ですよね。)