#!/usr/local/bin/perl use strict; use warnings; use utf8; print "Content-type: text/html; charset=utf-8\n\n"; print "\n"; print "\n"; print "\n"; print "CGI test\n"; print "\n"; print "\n"; # hash_key_delete0.txt #my %address = ("鈴木" => "東京都千代田区", #"山田" => "東京都葛飾区", #"本田" => "愛知県名古屋市", #"遠藤" => "大阪府堺市"); #連想配列の作り方1 my %address = ('suzuki' => 'aaa', 'yamada' => 'bbb', 'honnda' => 'ccc', 'endo' => 'ddd'); #「keys」 は、すべてのキーの値を取り出す my @keylist = keys(%address); # ハッシュのキーのリスト print "キーのリストは、@keylist
\n"; print "$keylist[0]\n
"; print "$address{$keylist[0]}
\n"; print "$address{'本田'}
\n"; #「keys」 は、ハッシュの要素(キー)の数を取り出す my $array_no = keys(%address); # ハッシュの要素の個数 print "要素数は $array_no です。
\n"; #「values」 は、すべての要素の値を取り出す my @elementlist = values %address; print "要素のリストは、@elementlist
\n"; #全体表示 print "---- 全て表示 --
\n"; while ( my ($key, $val) = each %address ) { print "名前: $key 住所: $val
\n"; } # delete(ハッシュの要素を削除する) exists の使い方 if ( exists $address{"鈴木"} ) { delete $address{"鈴木"};#"鈴木"があったとき削除する } delete $address{"suzuki"}; print "---- 削除後 、全て表示 --
\n"; for (my $i = 0; $i < $array_no; $i++){ print "名前: $keylist[$i] 住所: $address{$keylist[$i]}
\n"; } #削除 %address = (); print "---- 全て表示 --
\n"; while ( my ($key, $val) = each %address ) { print "名前: $key 住所: $val
\n"; } #再設定 %address = ("鈴木" , "東京都千代田区", "山田" , "東京都葛飾区", "本田" , "愛知県名古屋市", "遠藤" , "大阪府堺市"); print "---- 全て表示 --
\n"; while ( my ($key, $val) = each %address ) { print "名前: $key 住所: $val
\n"; } undef %address; print "---- 全て表示 --
\n"; while ( my ($key, $val) = each %address ) { print "名前: $key 住所: $val
\n"; } #再設定 %address = ("鈴木" , "東京都千代田区", "山田" , "東京都葛飾区", "本田" , "愛知県名古屋市", "遠藤" , "大阪府堺市"); print "---- 全て表示 --
\n"; while ( my ($key, $val) = each %address ) { print "名前: $key 住所: $val
\n"; } my %fruit = (red => "apple", yellow => "banana", purple => "grape"); delete $fruit{yellow}; # 残りの要素を全て展開 while ( my ($key, $val) = each %fruit ) { print "$key : $val
\n"; } print "------
\n"; my @fr_key = keys(%fruit); # ハッシュのキーのリスト my $fr_no = keys(%fruit); # ハッシュの要素の個数 for (my $i = 0; $i < $fr_no; $i++){ print "色: $fr_key[$i] 名前: $fruit{$fr_key[$i]}
\n"; } print "------------------
\n"; print "\n"; print "\n";