
No.1ベストアンサー
- 回答日時:
直接的な回答は避けます。
次のソースを参考にしてみて下さい。(と、言っても、静的作成がほぼ質問への答えなのですが。)ハッシュのハッシュを静的に作成する例と、動的に作成する例です。
# ハッシュのハッシュを静的に作る
%d = ( A => { AA=>aa, AB=>ab, AC=>ac, AD=>ad, AE=>ae },
B => { BA=>ba, BB=>bb, BC=>bc, BD=>bd, BE=>be },
C => { CA=>ca, CB=>cb, CC=>cc, CD=>cd, CE=>ce } );
foreach $i (sort keys %d) {
foreach $j (sort keys %{$d{$i}}) {
print '$d{'. $i. '}{'. $j. '}='. $d{$i}{$j}. ' ';
}
print "\n";
}
print "\n";
# ハッシュのハッシュを動的に作る
%h = ();
open(IN, 'in.data') || die "open error";
while(<IN>) {
chop;
my(%w);
$k = $_;
foreach (split(/ /)) {
$w{uc($_)} = $_;
}
$h{uc(substr($k, 0, 1))} = \%w;
}
close(IN);
# 動的に作ったハッシュのハッシュを取り出してみる
foreach $i (sort keys %h) {
foreach $j (sort keys %{$h{$i}}) {
print '$h{'. $i. '}{'. $j. '}='. $h{$i}{$j}. ' ';
}
print "\n";
}
print "\n";
なお、動的作成では、
aa ab ac ad ae
ba bb bc bd be
ca cb cd ce cf
の様なファイルを読み込ませる事を想定してあります。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
ハッシュ値が一致したデータは...
-
ハッシュ検索はなぜ速い
-
短いハッシュの作り方
-
画面を強制的に再描画させる方法
-
UWSCの終了の仕方
-
UWSCのスクリプトで行き詰って...
-
VBAでこの様なコード時のセルの...
-
流れ図(フローチャート)が分か...
-
VBAでの一時停止と再開の方法
-
UWSCに制限時間を付けたいです
-
VB2010でCSVファイルの読み込み
-
範囲指定したセルを1つずつ飛...
-
objective-cの多重ループbreak
-
リストボックスに縦スクロール...
-
RFC822形式の日付を生成するサ...
-
エクセルの当番表を作っていま...
-
一致する要素が格納されている...
-
VBのReturnの使い方
-
ExcelVBAで、index、match関数...
-
「偶数・奇数の和」のフローチ...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
ハッシュ検索はなぜ速い
-
チェックデジットについて
-
重複ファイルを削除したいので...
-
文字列を変数名として扱う方法
-
ハッシュリストって単にハッシ...
-
Perlでファイルを読み込み...
-
「名前を元に占いが出来るサイ...
-
列挙型と連想配列の違いを教え...
-
VBAにハッシュ関数はないのです...
-
まったく同じファイルのハッシ...
-
英語でのシャープとコメの呼び...
-
foreachについて
-
[perl] $xxx == 1 or $xxx == 5...
-
ハッシュリスト。
-
二次元配列のハッシュ版の記述...
-
ハッシュのソート
-
正規表現を使ってコードを短く...
-
短いハッシュの作り方
-
Perlでいうハッシュとはどのよ...
-
フォームデータをハッシュで返...
おすすめ情報