batooh: %hash im %hash

Beitrag lesen

Hallo.

'f' => \%fehler_e

Dass %fehler_e dem Schlüssel 'f' zugewiesen wird, ist beabsichtigt?

Aber wie bekomme ich z.B. den Text '2' in dem Hash %fehler_e?

Das hier reicht völlig:

my $testa = $fehler_tab{'e'}{'2'};

Alternativ würde auch folgendes funktionieren:

my $testa = $fehler_tab{'e'}->{'2'};

Oder das hier:

my $testa = ${ $fehler_tab{'e'} }{'2'};

Anstatt die Hashs %fehler_d und %fehler_e einzeln zu deklarieren, kannst du sie im Übrigen auch direkt als anonyme Hashs mittels geschweifter Klammern zusammen bauen, z. B.:

my %fehler_tab = ( 'd' => { '1' => 'Bitte Namen angeben',  
                            '2' => 'Name ist zu kurz',  
                            '3' => 'Name enthält unzulässige Zeichen'  
                          },  
                   'e' => { '1' => 'Please insert name',  
                            '2' => 'blabla',  
                            '3' => 'blablabla'  
                          },  
                 );

Schöne Grüße.