サンプル:配列から一意な要素を取り出す
ハッシュを使用して、配列の要素をキーに頻度を値として重複を排除する。
キーをその後リストにして、一意な配列を作成する。
foreach $item (@list) {
$seen{$item}++;
}
@uniq = keys %seen;
ハッシュを使用して、配列の要素のを順番に捜査して、一意の配列を再度作成する。プログラムの例では、数値で重複のあるリストの重複を排除したものです。
プログラム例
#!/usr/bin/perl
my @list , %seen , @uniq;
@list = (1,2,1,2,3,3,3,4,5,6,6,6);
%seen = ();
@uniq = ();
print "重複のあるオリジナルのリスト" , "\n";
print join("," , @list) , "\n\n";
foreach $item (@list) {
$seen{$item}++;
}
@uniq = keys %seen;
print "オリジナルのリストから重複を排除したユニークなリスト" , "\n";
print join("," , @uniq) , "\n";
実行結果
[it-engineer@home1 perl]# perl 20070520-6.pl
重複のあるオリジナルのリスト
1,2,1,2,3,3,3,4,5,6,6,6
オリジナルのリストから重複を排除したユニークなリスト
6,4,1,3,2,5
[it-engineer@home1 perl]#

