foreach my $sqlkey (keys %sql){ foreach my $csvkey (keys %csv){ next unless $csvkey =~ /$sqlkey\z/; # match end of sqlkey # code to compare $csv{$csvkey} & $sql{$sqlkey} and do other things } } #### my %sqltocsv = qw(EMP_NAME NAME EMP_JOB JOB ...); foreach $sqlkey (keys %sql){ if($sql{$sqlkey} eq $csv{$sqltocsv{$sqlkey}}){ # do things } }