Thread Datei lesen und in Hash schreiben? (45 answers)
Opened by Math55 at 2004-01-18 22:12

format_c
 2004-01-19 12:37
#79255 #79255
User since
2003-08-04
1706 Artikel
HausmeisterIn
[Homepage] [default_avatar]
MMh. So ist ja kein regelmäßiges System drin. Ich kann zumindest keins erkennen. Wenn du aber evtl. die Möglichkeit hättest, die Werte einer Liste mit Whitespaces zu trennen und dann erst die Kommentare dann könnte es z.B. so gehen:

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
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
my $string = qq~
GENLIST = Array2.genlist # Kommentar
TERMLIST = 02_IrgendeineListe 03_IrgendeineListe # Kommentar \
# Kommentar, \
# Kommentar
STARTLIST = dateiname.ids # Kommentar
OUTPUTNAME = # Kommentar
CROSSLIST = 01_XY # Kommentar
ADDFILTER = # Kommentar
~;

use strict;
use warnings;
use Data::Dumper;

my %hash;


my @lines = split /\r?\n/,$string;
for (@lines) {
if (/(\w+?)\s*?=\s*?(.*?)#/) {
my ($key,$values) = ($1, $2);
my @values = $values =~ /\s*(\S+)\s*/g;
$hash{$key} = [@values];
}
}

print Dumper \%hash;
_ _ END _ _
$VAR1 = {
'ADDFILTER' => [],
'CROSSLIST' => [
'01_XY'
],
'TERMLIST' => [
'02_IrgendeineListe',
'03_IrgendeineListe'
],
'OUTPUTNAME' => [],
'STARTLIST' => [
'dateiname.ids'
],
'GENLIST' => [
'Array2.genlist'
]
};


Ich hoffe das hilft dir etwas.
Gruß Alex

View full thread Datei lesen und in Hash schreiben?