my $x = 'st\x{f9}'; $x =~ s/\\x\{([\da-fA-F]{2,4})\}/pack("U",hex($1))/ge; #### use Encode; my $x = 'st\x{f9}'; my $iso = eval '"'.$x.'"'; $x = Encode::decode('iso-8859-1', $iso);