Bruce.です。
davi さんは書きました (2006/03/22 4:24):
> $value =~ s/%([a-fA-F0-9][a-fA-F0-9])/pack("C", hex($1))/eg;
この部分教育的指導です ;-)
多分、CGIでは有名なサイトのサンプルスクリプトから流れて
そうなっているのでしょうけれども
pack('C', hex($1))
は
pack('H2', $1)
でできます。
なんで無用に二段階にしているのやら。
use strict;
my $src = '%68%65%6C%6C%6F%2C%20%77%6F%72%6C%64';
my $dest1;
my $dest2;
$dest1 = $dest2 = $src;
$dest1 =~ s/%([a-fA-F0-9]{2})/pack('C', hex($1))/eg;
$dest2 =~ s/%([a-fA-F0-9]{2})/pack('H2', $1)/eg;
print "\$dest1=$dest1\n";
print "\$dest2=$dest2\n";
--
木村浩一
I thought what I'd do was, I'd pretend I was one of those deaf-mutes.
mail kbk@...
web www.kt.rim.or.jp/~kbk/index.html#zakkicho
homepage3.nifty.com/farstar/