ShiftJisで全角数字から半角数字への変換

[Perl]

試してないけどメモ。

$twoBytesnum = “[\x4F-\x58]“;
$oneBytenum = “[\x30-\x39]“;
if($str =~ /[\x82]($twoBytesnum)/)
{
$str =~ s/(?:[\x82]($twoBytesnum))/pack(H2,sprintf(“%X”,ord($1)-31))/eg;
}


ネタ元