#!/usr/bin/perl use strict; use warnings; use Data::Dump qw(dump); my $cfg = ''; $cfg .= $_ while ; # Kommentare raus $cfg =~ s/#(.*)//g; # Parameter, nur alphanumerische Zeichen im key $cfg =~ s/(\w+)\s*>\s*(.*)/ $1 => qq($2),/g; # Section, alphanumerische Zeichen, '/' und '.' im key $cfg =~ s/([\w\/\.]+):/},{ "$1" => {/g; # Korrekturen $cfg =~ s/},//; $cfg =~ s/},{/},/g; # Terminieren $cfg = $cfg."}\n}"; #print $cfg; my $ref = eval $cfg; if($@){ die "Fehler in Config: $@"; } else{ print dump $ref; } __END__ # Config-Datei ############################################################ /index.html: # angesetzter Kommentar title> Startseite der Webrepräsentanz "Home" # angebauter Kommentar descr> Rund um die Schrotmühle und das Backen von Roggenbrot lastmod > 1 css> /newstyle.css # eingerückter Kommentar /impressum: title>Impressum und Kontakt descr>Anbieterkennzeichnung nach Telemediengesetz lastmod> 1 /foo/bar/koks: title > Alles was Bar ist descr > Hier gehts um die Kohle /test: title> Testseite descr> Testbeschreibung einer Testseite