リリース 0.1 (未テスト,誤植の可能性あり)
1995年10月1日(日)
%HoL = (
"flintstones" => [ "fred", "barney" ],
"jetsons" => [ "george", "jane", "elroy" ],
"simpsons" => [ "homer", "marge", "bart" ],
);
# ファイルからの読込
# flintstones: fred barney wilma dino
while ( <> ) {
next unless s/^(.*?):\s*//;
$HoL{$1} = [ split ];
}
# ファイルからの読込; もっと多くの一時変数[more temps]
# flintstones: fred barney wilma dino
while ( $line = <> ) {
($who, $rest) = split /:\s*/, $line, 2;
@fields = split ' ', $rest;
$HoL{$who} = [ @fields ];
}
# リストを返す関数の呼出
for $group ( "simpsons", "jetsons", "flintstones" ) {
$HoL{$group} = [ get_family($group) ];
}
# 同様だが、一時変数[temps]を使用
for $group ( "simpsons", "jetsons", "flintstones" ) {
@members = get_family($group);
$HoL{$group} = [ @members ];
}
# 既存のfamilyに新メンバーを追加
push @{ $HoL{"flintstones"} }, "wilma", "betty";
# 一つ目の要素
$HoL{flintstones}[0] = "Fred";
# 別の要素
$HoL{simpsons}[1] =~ s/(\w)/\u$1/;
# 全項目print
foreach $family ( keys %HoL ) {
print "$family: @{ $HoL{$family} }\n"
}
# インデクスを用いて全項目print
foreach $family ( keys %HoL ) {
print "family: ";
foreach $i ( 0 .. $#{ $HoL{$family} } ) {
print " $i = $HoL{$family}[$i]";
}
print "\n";
}
# メンバーの番号によるソートをして全項目print
foreach $family ( sort { @{$HoL{$b}} <=> @{$HoL{$b}} } keys %HoL ) {
print "$family: @{ $HoL{$family} }\n"
}
# メンバーの番号と名前によるソートをして全項目print
foreach $family ( sort { @{$HoL{$b}} <=> @{$HoL{$a}} } keys %HoL ) {
print "$family: ", join(", ", sort @{ $HoL{$family}), "\n";
}
ご意見、ご要望は、
電子メールまたは
投稿にお願い致します。ホームページへ戻る。