2 Arrays als Hash ausgeben(ANFÄNGER)
Heinz
- perl
Hallo alle zusammen!
Ich habe folgendes Problem: Ich habe 2 Arrays und möchte diese in einem Hash kombinieren. Das ganze sollte dann in etwa so aussehen:
%hash("Name";"email";.....). erschwerend kommt dazu dass sich die längen beider Arrays ändern (beide sind allerdings gleich lang).
Leider bin ich noch blutiger anfänger
hoffe einer von euch kann mir helfen!
Danke im vorraus
Heinz
Hi Heinz,
[...]
Ich habe folgendes Problem: Ich habe 2 Arrays und möchte diese in einem Hash kombinieren.
[...]
erschwerend kommt dazu dass sich die längen beider Arrays ändern (beide sind allerdings gleich lang).
Ich hoffe mal, ich habe es richtig verstanden, dass du sozusagen in dem einem Array die "Namen"
hast, und im anderen die entsprechenden Werte (?).
Prinzipiell: die Liste mit den Namen durchgehen, und dann einfach daraufhin die Werte im anderen Array
zuweisen.
$i = 0;
for(@names) {
$hash{$_} = $values[$i];
$i++;
}
%hash ist dann der entsprechende Hash, den du haben willst.
(das geht bestimmt noch auf irgendeine elegantere Weise, aber sollte trotzdem funktionieren ;-)
bye,sebi
Hi Heinz,
[...]
Ich habe folgendes Problem: Ich habe 2 Arrays und möchte diese in einem Hash kombinieren.
[...]
erschwerend kommt dazu dass sich die längen beider Arrays ändern (beide sind allerdings gleich lang).Ich hoffe mal, ich habe es richtig verstanden, dass du sozusagen in dem einem Array die "Namen"
hast, und im anderen die entsprechenden Werte (?).
Prinzipiell: die Liste mit den Namen durchgehen, und dann einfach daraufhin die Werte im anderen Array
zuweisen.$i = 0;
for(@names) {
$hash{$_} = $values[$i];
$i++;
}
Solltest Du die Aufgabe richtig verstanden haben, läßt sich das ganze auch so lösen:
@hash{@names} = @values;
Fertig!
Ansonsten sollte Heinz vielleicht noch mal ein paar Worte über seine Arrays verlieren. Wie wäre es z.B. mit einem Beispiel ...
Gruß,
Jörk