Assoziatives Array in einen String umwandel
Gandalf
- perl
Hilfe Hilfe
my %alter = ("Waschmaschine","5","Sterioanlage","4","Stuhl","2","Tisch","3");
my %alt = %alter;
Wie wandelt man in perl ein assoziatives Array in ein String um
my @keys =sort {$alt{$a} cmp $alt{$b}} keys %alt;
foreach (@keys) {print "$_ je $alt{$_} Haeuser\n "};
Wie kann ich print ersetzen durch ein Array und dann abfragen
oder besser wie kann ich es gleich in einen String umwadeln.
Aber so das die Zuordnung noch das ist.
Waschmaschine je 5 Haeuser, Sterioanlage je 4 Haeuser, ......
cu Sputnik
Halihallo Gandalf
Hilfe Hilfe
ersetze dies durch eine gültige Anrede. Danke.
my %alter = ("Waschmaschine","5","Sterioanlage","4","Stuhl","2","Tisch","3");
my %alt = %alter;
Warum kopierst du den Hash?
my @keys =sort {$alt{$a} cmp $alt{$b}} keys %alt;
foreach (@keys) {print "$_ je $alt{$_} Haeuser\n "};
Wie kann ich print ersetzen durch ein Array und dann abfragen
Wieso print ersetzen? - Durch was willst du es ersetzt haben?
Du möchtest aus dem Hash (assoziatives Array) ein String erstellen?
my $str = '';
my @keys = sort {$alt{$a} cmp $alt{$b}} keys %alt;
foreach (@keys) {$str .= "$_ je $alt{$_} Haeuser,"};
chop $str; # letztes Zeichen (hier ein Komma) weg.
Viele Grüsse
Philipp
Hallo,
ich möchte zu Philips Antwort noch etwas hinzufügen.
Wozu willst du eigentlich den Hash in ein Array umwandeln?
Du könntest den Hash auch so ausgeben :
#!/usr/bin/perl -w
use strict;
my %alter = ('Waschmaschine','5','Sterioanlage','4','Stuhl','2,'Tisch','3');
while(my($key, $value) = each %alter) {
print $key . ' je ' => $value . " Haeuser\n";
}
$xNeTworKx.