http://www.perlmonks.org?node_id=912204


in reply to How can we compare two hashed with each other for case insensitive data?

You could also use Data::Dumper in Terse mode to transform the contents of your array into a string which you can lc and eval to make all contents, including hash keys and values, lower case.
#!/usr/bin/perl use strict; use warnings; use Data::Dumper; my @array1= ( { 'My_ID' => '86091', 'IP' => '2001:DB8:0:0:0:0:0:0/128' }, { 'mY_id' => '86091', 'iP' => '2001:DB8:0:0:0:0:0:0/32' } ); print Dumper(\@array1); print "\nCompare with\n"; @array1 = @{lowercase(\@array1)};#Dereference array ref to array print Dumper(\@array1); sub lowercase{ my $orig_aref = shift; local $Data::Dumper::Terse = 1; #Eliminate '$VAR1 = ' my $string = Dumper($orig_aref); #Stringify contents of data struc +ture my $arefmod = eval lc($string); #Make all data lower case and eval +uate return $arefmod; }
"It is dangerous to understand new things too quickly." — Josiah Warren
  • Comment on Re: How can we compare two hashed with each other for case insensitive data?
  • Download Code