Fopen hilfe beim seitenparsen

Hi Folks,

regulaere ausdruecke… mein natuerlicher feind :frowning:

ich moechte einen terminkalender von einer internen seite parsen und in eine eigene datenbank schreiben. hintergrund: ein paar spezis veroeffentlichen im intranet eine art eventkalender mit ihrer frontpage-irgendsowas-mist-software… und ich moechte davon was brauchbares machen.

es ist wie folgt aufgebaut:
es handelt sich um einen wochenkalender von mo-so im table format.

[event]
[mo]
[di]
[mi]
[do]
[fr]
[sa]
[so]
eventA
10-12 Uhr
12-16 Uhr
16-18 Uhr
 
20-22 Uhr

Ich kenne den Eventnamen (im obigen Beispiel „eventA“).
Ich brauche ein script, welches nach folgendem Schema parst:

suche nach variable „eventA“ und nehme die naechten SIEBEN folgenden werte zwischen den tags und schreibe sie in einen Hash -->
$events[‚eventA‘][‚mo‘] = „10-12 Uhr“;
$events[‚eventA‘][‚di‘] = „12-16 Uhr“;
$events[‚eventA‘][‚mi‘] = „16-18 Uhr“;
$events[‚eventA‘][‚do‘] = " ";
$events[‚eventA‘][‚fr‘] = „20-22 Uhr“;
usw.

Das wäre der hammer, wenn mir Jemand helfen könnte. :-/

Danke im voraus…

Gruss

PixelKoenig

Moin!

Es sieht zwar etwas kompiziert aus, aber folgender RegEx funktioniert:

#(?:.*) eventA (?:.*) (.*) (?:.*) (.*) (?:.*) (.*) (?:.*) (.*) (?:.*) (.*) (?:.*)#isU

Damit kannst du die Daten mit den entsprechenden preg_*-Funktionen auslesen und in deinen Hash speichern.

Kurze Erklärung: alle (.*) liefern ein Ergebnis zurück (zwischen den ) und alle (?:.*) sind variable Zwischenstücke, die nicht zurückgegeben werden sollen. Damit es Zeilenweise (auf die Tabelle bezogen) funktioniert, muss zwingend das enthalten sein in Verbindung mit dem Schalter U (ungreedy).

Viel Spaß dabei!

Lutz