![]() |
Re: Parser
Hallo Manuel,
Zitat:
Zitat:
Zitat:
Zitat:
Übrigens: Ein wesentlicher Unterschied zwischen den beiden von mir genannten Parsertypen ist der, dass ich einen Recursive-Descent Parser oft selbst schreibe, aber einen tabellengesteuerten LALR Parser in der Regel von einem Generator erstellen lasse. Der streng formale Ansatz beim LALR macht ihn zum idealen Kandidaten einer Automatisierung. Freundliche Grüße |
Re: Parser
Vor dem Motivationsverlust. ;)
Wie genau gehe ich denn jetzt an diesen LALR-Parser ran? Was soll ich zuerst erstellen und wie soll ich ihn implementieren? |
Re: Parser
*push*
|
Re: Parser
@topic: das Zauberwort heisst XML!
Dein Text ist das TXMLDocument, die Unit das DocumentElement dieses TXMLDocument. Dessen NodeName wäre 'Unit' und dieser hätte ein Attribut namens 'Name' mit dem Wert 'Test'. In diesem DocumentElement befindet sich nun der Knoten 'includes', in diesem wieder ein Knoten 'include' mit dem Attribut 'name' und Wert 'io.*'... .. und vóilà: eine Baubstruktur. p.s.: die XML-Knoten kann man dann noch typisieren. |
Re: Parser
Ich bin gerade selber dran, einen Parser zu schreiben (VRML).
Allerdings habe ich auch noch nicht so richtig einen Plan, wie ich diesen rein programmtechnisch umsetzen soll. Man findet im Netz nur tonnenweise theoretische Grundlagen zu Parsern allgemein. Gibt es da nicht irgendwas, was man sich anschauen kann, wie man effizient den Text durchläuft und solche "Knoten" dann anlegt (Objekte?). Bis jetzt suche ich einfach relativ "doof" und dreckig nach bestimmten Schlüsselwörtern und versuche dann die einzelnen Properties zu lesen. Allerdings wird das ein riesen Code um alle benötigten Teil abzudecken -.- |
Re: Parser
Das Programm selbst ist nicht das Problem, ein LR-Parser ist relativ leicht zu implementieren. Ich überlege mir gerade das wirklich Schwere an der Sache: Die Aktions- und GoTo-Tabelle.
|
Re: Parser
Vieleicht kann dir das freie Buch
![]() |
Alle Zeitangaben in WEZ +1. Es ist jetzt 03:37 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz