Frédéric: 2dimensionale hashs

Hi,

Ich bin beim programmieren auf ein Problem gestossen.
Ich habe ein Hash, der z.B. so aussieht:

$hash{1}{a}=1;
$hash{1}{b}=1;
$hash{1}{c}=1;
$hash{2}{a}=1;
$hash{2}{b}=1;
$hash{3}{a}=1;
$hash{4}{a}=1;

Ich will jetzt alle Elemente des $hash{1} anzeigen lassen. Er sollte also so etwas heraugeben:
a=1
b=1
c=1

Bei einem 'normalen' Hash, würde es ja so aussehen:
$hash2{a}=1;
$hash2{b}=1;
$hash2{c}=1;
foreach $temp (keys %hash2) {
 print "$temp=$hash2{$temp}<BR>";
}

Hat jemand eine Lösung?
übrigens, gibt es ein 'offizieller' Name für diese zweidimensionale Hashs?

Gruss,
Frédéric

  1. Hallo Frédéric!

    $hash{1}{a}=1;
    $hash{1}{b}=1;
    $hash{1}{c}=1;
    $hash{2}{a}=1;
    $hash{2}{b}=1;
    $hash{3}{a}=1;
    $hash{4}{a}=1;

    Ich will jetzt alle Elemente des $hash{1} anzeigen lassen.

    Das geht fast ganz genau so, wie wenn du mit einem normalen Hash arbeitest:

    foreach $temp (keys %{$hash{1}}) {
        print "$temp = $hash{1}{$temp}\n";
    }

    Das ganze was du machst nennt sich einfach Hashs of hashes, lies einfach mal perldoc perldsc durch.

    Gruß,
          Stefan

    1. Das ganze was du machst nennt sich einfach Hashs of hashes, lies einfach mal perldoc perldsc durch.

      Gruß,
            Stefan

      OK, vielen Dank.