#!/usr/bin/perl -w use strict; use Encode; use Devel::Peek; my $v= "%C2%A3"; $v =~ s/%([a-fA-F0-9]{2})/pack('C', hex($1))/eg; Dump $v; my $decoded = decode("UTF-8", $v); Dump $decoded; my $encoded = encode("ISO-8859-1", $decoded); Dump $encoded; __END__ SV = PVMG(0xf98470) at 0xf15d08 REFCNT = 1 FLAGS = (PADMY,SMG,POK,pPOK) IV = 0 NV = 0 PV = 0xf46af0 "\302\243"\0 CUR = 2 LEN = 8 MAGIC = 0xf0f350 MG_VIRTUAL = &PL_vtbl_mglob MG_TYPE = PERL_MAGIC_regex_global(g) MG_LEN = -1 SV = PV(0xeee388) at 0xf16080 REFCNT = 1 FLAGS = (PADMY,POK,pPOK,UTF8) PV = 0xfe40c0 "\302\243"\0 [UTF8 "\x{a3}"] CUR = 2 LEN = 8 SV = PV(0xeee448) at 0xf16110 REFCNT = 1 FLAGS = (PADMY,POK,pPOK) PV = 0xfd44c0 "\243"\0 CUR = 1 LEN = 8