http://qs1969.pair.com?node_id=871555


in reply to Ignore Case when comparing Hash Keys

I'd create a translate key hash (called %xl8 in code example below).
%hash1 = ("John", 43, "Paul", 25, "Marie", 22); %hash2 = ("john", 43, "Paul", 25, "marie", 22); foreach (keys %hash1) { $xl8{lc $_} = $_; } while (($KEY_2, $VALUE_2) = each %hash2){ if (exists $xl8{lc $KEY_2}){ print "$KEY_2 : Matched\n"; } else{ print "$KEY_2 : Did not match\n"; } }
(looks like I was too slow... someone else suggested same with the elegant "map" solution. :)