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
# 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; } }
|
|---|