いつも忘れるのでメモ。
%x2y = ();
# 読み込み
while(<>)
{
$_ =~ s/[\r\n]//g; # 改行除去
@c = split / /; # スペースで分割
push(@{$x2y{$c[0]}}, $c[1]); # キーが$c[0]の配列に$c[1]を追加
}
# 表示
while(($k,$v)=each(%x2y))
{
print $k." --> ".join(", ",@$v)."\n";
}
このスクリプトに標準入力から
a a
b b
b c
c d
c e
c f
を入力すると、
c --> d, e, f
a --> a
b --> b, c
が得られる。
0 件のコメント :
コメントを投稿