Thread RegEx: großes, umfangreiches Problem
(18 answers)
Opened by pktm at 2003-08-17 18:54
fast vergessen ;) das ist hier natürlich informell, wahrscheinlich sind teile sogar falsch, aber zum verstehen tut das hoffentlich.
eine grammatik ist eine möglichkeit, einen text zu beschreiben. der text muss dazu eine struktur besitzen, die allen zu analysierenden texten unterliegt. in diesem falle sind die texte in pktm's tollem html-format. genau dieses wird mit der grammatik beschrieben. aus den von pktm geposteten einträgen kann auf die struktur geschlossen werden: titel toc <hr /> <h2>überschrift 1</h2> inhalt <hr /> <hr /> <h2>überschrift 2</h2> inhalt <hr /> aus dieser struktur heraus ist die grammatik entstanden. wie lese ich eine grammatik? datei: header eintraege eine datei besteht aus einem header und den einträgen header: titel toc der header besteht aus dem titel und dem toc titel: '<h1>' /.*(?=<\/h1>)/ '</h1>' der titel besteht aus einem string '<h1>', gefolgt von beliebigem text (in dem nicht </h1> vorkommen darf, stichwort zero-width positive look-ahead), und dann der string '</h1>' toc: toc_eintrag(s?) der toc besteht aus keinem, einem oder mehreren toc_einträgen (für die genauen codes in den pod gucken). toc_eintrag: '<li>' /[^\n]*/ ein toc-eintrag besteht aus dem string '<li>', und dann beliebigen zeichen bis auf das newline zeichen. und so gehts einfach weiter. der code hinter den sog. produktionen wird ausgeführt, falls diese erfolgreich angewendet werden konnte. in diesem fall baut die grammatik eine datenstruktur auf, die unbedingt auf eine antwort von pktm wartet :p zum nachdenken: du kennst bereits einen grammatik-typ und wendest ihn fast blind an! :) hehe das oben beschriebene ist lediglich eine stufe mächtiger. -- stefan
|