Thread Zweistufige Hash-Referenz zuweisen (36 answers)
Opened by mikdoe at 2009-06-03 20:50

mikdoe
 2009-06-04 00:26
#122310 #122310
User since
2007-08-13
98 Artikel
BenutzerIn
[default_avatar]
pq, Du brauchst da nichts zu anonymisieren!
Das ist ein ausdrückliches Testkonto, welches der Dienstanbieter auf seiner Homepage auch verwendet, siehe drei oder mehr Posts weiter oben!
Bitte nicht mit so einem Sch... aufhalten. Es geht auch nicht um den Inhalt sondern um das Auslesen der Daten!!!

Also nochmal:
Ich bekomme eine Referenz vom Modul und werte diese aus.

Mein Script:
Code (perl): (dl )
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
my @keys = keys (%$hash_ref);
foreach my $k (sort {lc $keys[$a] cmp lc $keys[$b]} 0..$#keys) {
        print substr($keys[$k] . '.' x 30,0,30) . ' => ';
        if ($keys[$k] eq 'bic_candidates') {
                print "(Untermenge wie folgt:)\n";
                for my $e ( @{ $hash_ref->{$k} } ) {
            print "$e\n";
        }
        }
        elsif ($keys[$k] eq 'checks') {
                print "(Untermenge wie folgt:)\n";
                for my $e ( @{ $hash_ref->{$k} } ) {
                        print "$k -> $e\n";
                } 
        }
        else {
                print (defined $hash_ref -> {$keys[$k]} ? (length $hash_ref -> {$keys[$k]} > 65 ? substr($hash_ref -> {$keys[$k]},0,60) . '...' : $hash_ref -> {$keys[$k]}) : 'NOT DEFINED');
        }
        print "\n";
}


Meine Ausgabe:
Code: (dl )
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
account_check................. => passed
account_number................ => 648479930
account_validation............ => Methode C1, Variante 1, Konto 0648479930, BLZ 50010517, Pr³f...
account_validation_method..... => C1
alternative_account_number.... => NOT DEFINED
alternative_bank_code......... => NOT DEFINED
balance....................... => 78
bank.......................... => ING-DiBa
bank_address.................. => NOT DEFINED
bank_code..................... => 50010517
bank_code_check............... => passed
bank_url...................... => NOT DEFINED
bic_candidates................ => (Untermenge wie folgt:)

bic_plausibility_check........ => NOT DEFINED
branch........................ =>
branch_code................... => NOT DEFINED
checks........................ => (Untermenge wie folgt:)

country....................... => DE
data_age...................... => 20090309
formatcomment................. => B = sort code (BLZ), C = account No.
iban.......................... => DE48500105170648479930
IBANformat.................... => DEkk BBBB BBBB CCCC CCCC CC
length_check.................. => passed
result........................ => passed


Frage: Warum werden mir die beiden tiefer liegenden Mengen von 'checks' und 'bic_candidates' nicht angezeigt?
Was mache ich falsch?

Danke für jede hilfreiche Antwort.

View full thread Zweistufige Hash-Referenz zuweisen