in reply to Eliminate exact duplicates from array of hashes

#!/usr/bin/perl use strict; # https://perlmonks.org/?node_id=11107249 use warnings; use List::Util qw(uniq); use Data::Dump qw(dd pp); my @test_data = ( { Tag1 => "1", Tag2 => "a" }, { Tag1 => "1", Tag2 => "a" }, { Tag1 => "1", Tag2 => "b" }, { Tag1 => "1", Tag2 => "c" }, { Tag1 => "1", Tag2 => "a" }, { Tag1 => "2", Tag2 => "a" }, { Tag1 => "2", Tag2 => "d" }, { Tag1 => "2", Tag2 => "a" }, { Tag1 => "3"}, { Tag1 => "sun", Tag2 => "a" }, { Tag1 => "sun", Tag2 => "a" }, ); my @unique = map eval, uniq map { pp $_ } @test_data; dd \@unique;

Outputs:

[ { Tag1 => 1, Tag2 => "a" }, { Tag1 => 1, Tag2 => "b" }, { Tag1 => 1, Tag2 => "c" }, { Tag1 => 2, Tag2 => "a" }, { Tag1 => 2, Tag2 => "d" }, { Tag1 => 3 }, { Tag1 => "sun", Tag2 => "a" }, ]

Replies are listed 'Best First'.
Re^2: Eliminate exact duplicates from array of hashes
by Anonymous Monk on Oct 09, 2019 at 18:00 UTC

    This seems to do exactly what I was looking for. Thank you.