my %value_lkup = ( A => '1000', B => '2000', ); my $pat = '[' . join('', keys %value_lkup) . ']'; s/($pat)/$value_lkup{$1}/g; #### s/([AB])/ ( ord($1)-ord('A')+1 )*1000 /eg;