[Perl]URLエンコード/デコード処理
By tkumakiti - Last updated: 土曜日, 9月 12, 2009 - Save & Share - Leave a Comment
下記の処理をしてたんですが、バイナリーデータが発生してました。
◯エンコード
$str =~ s/([^¥w ])/’%’.unpack(’H2′, $1)/eg;
$str =~ tr/ /+/;
◯デコード
$str =~ tr/+/ /;
$str =~ s/%([0-9A-Fa-f][0-9A-Fa-f])/pack(’H2′, $1)/eg;
なんで、ここを参考にしました。
◯エンコード
$str =~ s/(\W)/sprintf( “%%%02X”, ord($1))/ego;
◯デコード
$str =~ s/%([0-9a-fA-F][0-9a-fA-F])/chr(hex($1))/ego;