foreach my $key ( keys (%hasha)) {if ( my @temp = grep ( /$key/, @prevarray)){push(@{$hasha{$key}},$value); next;} #closes if loop else { push (@{$hashb{$key}},$value); next;} #closes if loop } #close foreach loop