my $value = '%22Happy%20Birthday%21%22'; $value =~ tr/+/ /; $value =~ s/%([a-fA-F0-9][a-fA-F0-9])/pack("C",hex($1))/eg; print "$value\n";