[英]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.