my %pkg_lkup ( ... => ..., ... => ..., ... => ..., ); for my $rec (@records) { if ( my ($refdes) = $rec =~ /REFDES=(.*)/ ) { if (exists($pkg_lkup{$refdes})) { $rec =~ s/PKG_TYPE=.*/PKG_TYPE=$pkg_lkup{$refdes}/; } } print($rec); }