http://qs321.pair.com?node_id=574672


in reply to Re^2: Need help with removing duplicate hash keys from array of hashes
in thread Need help with removing duplicate hash keys from array of hashes

Just to explain what chargrill does here :
# Create a lookuptable to store found items my %hash = (); # Iterate over the data-array (thats what grep does here), and add the + item to newdata, and set the found item in the lookup table. When th +e new item is in the lookup table, don't add it again. my @newdata = grep { ! $hash{ $_->{operation} . $_->{machine} }++ } @$ +data; # more readable than grep (to my opinion,probably not to all others :) + ), but basically the same: my %hash = (); my @newdata; foreach my $item (@{$data}) { if (! $hash{ $item->{operation} . $item->{machine} } ) { $hash{ $item->{operation} . $item->{machine} } = 1 ; push @newdata, $item; } }
"We all agree on the necessity of compromise. We just can't agree on when it's necessary to compromise." - Larry Wall.