my %xref = ( 'abbrev1' => '100 - Non-Abbreviated 1', 'abbrev2' => '200 - Non-Abbreviated 2', ... ); #### my $alternations = join '|', keys %xref; my $regexp = qr/\b($alternations)\b/; #### my( $abbrev ) = $raw_response =~ m/$regexp/; my $std_response; if( exists $xref{$abbrev} ) { $std_response = $xref{$abbrev}; } else { die "No valid response found in <<$std_response>>"; } print "$std_response\n";