我有这样的哈希。
my $records = {
'Name' => [
{ A => 101},
{ B => 102},
{ B => 102},
{ C => 104},
{ C => 104},
],
};
现在我想得到重复的哈希引用,如B => 102重复我希望得到休息我想离开。
我想获得重复的所有哈希引用。 在最后的回复中。
我想要的回答是这样的:
$records = {
'Name' => [
{ B => 102},
{ C => 104},
],
};
答案 0 :(得分:1)
假设具有重复键的哈希只有一个键/值对,
my $records = {
'Name' => [
{ A => 101},
{ B => 102},
{ B => 102},
{ C => 104},
{ C => 104},
],
};
my %seen;
@{ $records->{Name} } = grep {
my ($k) = keys %$_;
# approve only keys which are seen second time,
# as this qualifies them as duplicates
++$seen{$k} ==2
}
@{ $records->{Name} };