in reply to output from a form page with multiple selects

$header = "California:" if $field =~ /California_c/; $header = "Oregon:" if $field =~ /Oregon_o/; $header = "Utah:" if $field =~ /Utah_u/;

is not very extensible. Have a look at the following:

%states = ( 'California_c' => 'California', 'Oregon_o' => 'Oregon', 'Utah_h' => 'Utah', ... ); ... $header = $states{$field} . ':';

or maybe just

$header = $field; $header =~ s/_[a-z]+$//; $header .= ':';