簡體   English   中英

如何使用perl獲得每個類別的唯一成員?

[英]How can I get unique members per category using perl?

我使用哈希存儲成員ID。 我使用以下驗證來避免重復:

if($cases{$type} != $member_id) {
    $cases{$type} = $member_id;
}

之后,我想按每個$ type獲取成員總數。 我怎樣才能做到這一點?

我嘗試了以下操作,但不起作用:

scalar(values $cases{$type});

非常感謝。

您當前的方法實際上並不計算給定類型中有多少個成員。 它只是跟蹤最后添加的成員是什么。

為了保持計數,請考慮使用哈希哈希; 在您要添加的每個$member_id使用它:

$cases{$type}{$member_id} = 1;

哈希分配的值無關緊要; 這只是使用哈希鍵保持唯一性的一種方法。

然后,要獲取給定類型的成員數,請使用

scalar keys %{$cases{$type}}

您可以使用$member_id作為密鑰,並使用grep查找計數。 $type$case{$member_id} = $type

使用以下命令打印計數。

print scalar grep $case{$_} == $type, keys %case;

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM