$var = 'a'; $arg_2 =~ s@\\x([0-9]+)@pack("H*", $1)@ge; $var =~ s@$arg_1@$arg_2@; # works now print "$var\n";