Thread 3 Hashes aus einem Hash erzeugen (14 answers)
Opened by cbxk1xg at 2005-06-23 00:25

cbxk1xg
 2005-06-23 00:25
#55686 #55686
User since
2003-10-20
496 Artikel
BenutzerIn
[default_avatar]
Hallo Freunde der Sonne,

ich stehe etwas auf dem Schlauch. Ich will eigentlich nur aus einem Hash, drei verschiedene machen. Dabei soll lediglich zwischen unterschiedlichen Keys aussortiert werden. Also, dass was bei dem HASH %PLU gemacht werden soll, soll später auch bei %PM und %UFI gemacht werden.

Es geht darum, daß ich einige Keys im Hash %INPUT habe, die mit "PLU_" anfangen. Nun will ich Keys mit diesem Muster in einen eigenen Hash übertragen. Und dies natürlich mit ihren entsprechenden Werten.

Leider bekomme ich beim Hash %PLU jetzt den Schlüssel und nicht den Wert zurück.

Code (perl): (dl )
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
my (%INPUT) = @_;
my %PM    = ();
my %UFI    = ();
my %PLU = ();
for my $key (sort keys %INPUT)
{
$PM{$key}    = $DATAINPUT{$key}    if $key =~ /^PM_(.*?)/;
$UFI{$key}    = $DATAINPUT{$key}    if $key =~ /^UFI_(.*?)/;

if ($key =~ /^PLU_(.*?)/) {
$key =~ s-^PLU_(.*?)-$1-;
$PLU{$key} = $key;
}

}
undef %INPUT;

View full thread 3 Hashes aus einem Hash erzeugen