- Perlでは、キーと値のペアを格納したデータ構造のことをハッシュ(hash)と呼ぶ
- ハッシュのキーはユニークな文字列である
- Perlのハッシュは、要素の順序を保存しない
keys関数とvalues関数(全てのキー/値を取り出す):
#!/usr/bin/env perl use v5.12; use warnings; my %hash = ('a' => 1, 'b' => 2, 'c' => 3); my @k = keys %hash; my @v = values %hash; say "@k"; # a b c (順不同) say "@v"; # 1 2 3 (順不同)
each関数(ハッシュ全体に繰り返しを行う):
#!/usr/bin/env perl use v5.12; use warnings; my %hash = ('a' => 1, 'b' => 2, 'c' => 3); while ((my $key, my $value) = each %hash) { say "$key => $value"; }
exists関数(あるキーがハッシュの中に存在するか確認):
#!/usr/bin/env perl use v5.12; use warnings; my %books = ('hoge' => 'fuga'); if (exists $books{'hoge'}) { say $books{'hoge'}; }
delete関数(ハッシュから指定されたキーを削除):
#!/usr/bin/env perl use v5.12; use warnings; my %hash = ('key' => 'val'); delete $hash{'key'}; if (exists $hash{'key'}) { say 'not deleted'; } else { say 'deleted'; }