in reply to tr doesn't *really* use a list
Since it only works on single characters, you won't be able to get the one -> two-character mappings like that using it. You'll have to resort to something like this:
my %MAP = ( "\xE4" => 'ae', "\xE9" => 'e', "\xF6" => 'oe', "\xFC" => 'ue', ); my $mapfrom = join('|', map { quotemeta } keys %MAP); s/($mapfrom)/$MAP{$1}/eg;
|
|---|