use strict; use warnings; use Data::Dumper; my %final=(); my %hash =( 1=>'the', 2=>'The', 3=>'word', 4=>"Word",5=>'ree',6=>"REE"); foreach my $keys(keys %hash) { foreach my $keys1(keys %hash) { if(lc($hash{$keys}) eq $hash{$keys1}) { $final{lc($hash{$keys})}++; } } } print Dumper \%final;