Code:
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
27
28
29
30
31
32
33
34
35
36
37
38
use strict;
my @Server = qw(google google google web gmx );
my @Pfad = qw(start start test mail sms );
my @Datei = qw(index start login test send);
my @Packen = qw(ja nein ja nein ja );
my $l = scalar @Server;
die "unterschiedlich große Arrays" if $l != scalar @Server or
$l != scalar @Pfad or
$l != scalar @Datei or
$l != scalar @Packen ;
my %Hash = ( server => {} );
for my $index (0..$l-1) {
# äußeren Hash-Schlüssel anlegen, Wert ist leeres anonymes Hash:
$Hash{server}->{$Server[$index]} = {};
# Pfad als Schlüssel eintragen und leeres anonymes Array als Wert:
$Hash{server}->{$Server[$index]}->{folder} =
{ $Pfad[$index] => { datei => { } } };
}
# inneres Array füllen:
for my $index (0..$l-1) {
$Hash{server}->
{$Server[$index]}->
{folder}->
{$Pfad[$index]}->
{datei}->
{$Datei[$index]} = { logik => $Packen[$index] };
}
use Data::Dumper;
print Dumper \%Hash;
mit der Ausgabe
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
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
$VAR1 = {
'server' => {
'web' => {
'folder' => {
'mail' => {
'datei' => {
'test' => {
'logik' => 'nein'
}
}
}
}
},
'google' => {
'folder' => {
'test' => {
'datei' => {
'login' => {
'logik' => 'ja'
}
}
},
'start' => {
'datei' => {
'index' => {
'logik' => 'ja'
},
'start' => {
'logik' => 'nein'
}
}
}
}
},
'gmx' => {
'folder' => {
'sms' => {
'datei' => {
'send' => {
'logik' => 'ja'
}
}
}
}
}
}
};
falls Du darauf noch was erkennen kannst.
Edit: Wahrscheinlich siehst Du mehr wenn Du den Code bei Dir laufen lässt.\n\n
<!--EDIT|Crian|1066834488-->
s--Pevna-;s.([a-z]).chr((ord($1)-84)%26+97).gee; s^([A-Z])^chr((ord($1)-52)%26+65)^gee;print;
use strict; use warnings; Link zu meiner Perlseite