perl中两个urldecode和urlencode的方法
2006-08-02urlencode / urldecode in Perl
If you are looking for PHP’s urlencode/urldecode equivalent in Perl, you won’t find any. But here’s what you can do:
Encode:
$str =~ s/([^A-Za-z0-9])/sprintf(“%%%02X”, ord($1))/seg;
Decode:
$str =~ s/%([A-Fa-f0-9]{2})/pack(‘C’, hex($1))/seg;
1 2 3 4 5 6 7 8 9 10 11 12 |
sub urlEncode { my ($string) = @_; $string =~ s/(W)/"%" . unpack("H2", $1)/ge; #$string# =~ tr/.//; return $string; } sub urlDecode { my ($string) = @_; $string =~ tr/+/ /; $string =~ s/%([a-fA-F0-9][a-fA-F0-9])/pack("C", hex($1))/eg; return $string; } |
发表评论