Nee, "split()" trennt Bereiche
innerhalb einer Zeile.
Entweder müßtest Du die Trennung in der Datei von Hand vornehmen, was mehr oder weniger aufwendig ist.
Oder: Wenn Du mit eckigen Klammern leben kannst, kannst Du dafür
Config::Simple verwenden. Das ginge so: Daten ("config.ini"):
[h]
cool = ja
schön = nein
[d]
cool = nein
schön = ja
[b]
cool = nein
schön = nein
Skript:
use warnings;
use strict;
use Config::Simple;
use Data::Dumper;
my %Config;
Config::Simple->import_from('config.ini', \%Config);
print Dumper(\%Config);
Ausgabe:
$VAR1 = {
'h.schön' => 'nein',
'd.schön' => 'ja',
'h.cool' => 'ja',
'b.cool' => 'nein',
'b.schön' => 'nein',
'd.cool' => 'nein'
};
Wie Du siehst, ist dann erstmal alles in einem Hash. Wenn Du willst, kannst Du das dann noch von Hand trennen. Dabei kannst Du dann "split()" verwenden, um z.B. 'd.cool' in 'd' und 'cool' zu trennen.
HTH
Last edited: 2017-06-21 23:11:29 +0200 (CEST)