極悪です。
URL の %?? をデコードするスクリプトです
(単に Encode を使ってみたかっただけです)。
● 使い方
D:% echo 2002%94N06%8C%8E | perl deURL.pl
2002年06月
D:%
● deURL.pl
#!/usr/local/bin/perl
use strict;
use Encode::Guess qw/euc-jp shiftjis 7bit-jis/;
package Encode::URL;
use base qw(Encode::Encoding);
__PACKAGE__->Define('URL');
sub decode($$;$){
my($obj,$str,$chk) = @_;
$str =~ s/%([0-9a-fA-F][0-9a-fA-F])/chr(hex $1)/eg;
$str = Encode::decode('Guess',$str);
$_[1] = '' if $chk; # this is what in-place edit means
return $str;
}
sub encode($$;$){ die qq/URL encode not implemented.\n/ }
package main;
binmode(STDIN => ":encoding(URL)");
binmode(STDOUT => ":encoding(CP932)");
while(<>){ print }
__END__
--
FZH01112 at nifty.com
http://hpcgi1.nifty.com/dune/gwiki.pl?