#! /usr/bin/perl %hash1 = ("John", 43, "Paul", 25, "Marie", 22); %hash2 = ("john", 43, "Paul", 25, "marie", 22); my %lc_hash1 = map { lc $_ => { name => $_, value => $hash1{$_} } } keys %hash1; while (($KEY_2, $VALUE_2) = each %hash2){ if (exists $lc_hash1{lc $KEY_2}){ print "$KEY_2 : Matched\n"; } else{ print "$KEY_2 : Did not match\n"; } }