Gibt es einen Parser-Code oder eine Parser-Komponente für Delphi oder ein Programm, das die BNF-Notation (Backus-Naur-Form) als Eingabe akzeptiert und Delphi-Code (oder Pascal-Code) zum Parsen erzeugt?
Der Grund dafür ist, dass ich versuchen werde, Datensätze nach verschiedenen Versionen des GEDCOM-Standards
Ansonsten muss ich die Zustandsstrukturen manuell erstellen.
Ich habe die folgende Frage gesehen (und TinyPG sieht gut aus , aber ich brauche Delphi-Code): Parser-Generator, der C # mit einer BNF-Grammatik ausgibt?
Wenn es kein solches Biest gibt, gibt es noch andere Tools, die diese Aufgabe erleichtern?
Ich empfehle Ihnen das GOLD Analysesystem. GOLD-Grammatiken basieren auf der Backus-Naur-Form und regulären Ausdrücken.
Ressourcen
Engines
Engines für Delphi sind hier besonders aufgeführt hier .
Dies eins für Object Pascal von Rob van den Brink könnte von Interesse sein.
Quote:
Rob van den Brink hat seine Engine für die Object Pascal-Programmierung aktualisiert Sprache. Seine Implementierung verwendet eine Programmvorlage, um ein voll funktionsfähiges Programm. Dieser Ansatz bettet die Parse-Tabellen ein direkt im Quellcode. Daher müssen Sie kein a laden Kompilierte Grammatik-Tabelle-Datei. Der Download enthält eine Programmvorlage sowie einige Beispiele.
Beispielprojekt mit GOLD
GOLD ist mächtig, es wird als Parsing-Engine von dcu2pas verwendet, einem Delphi Compiled Unit (dcu files) -Decompiler, der gehostet wird hier (bitbucket.org). Beachten Sie stattdessen, dass es in d geschrieben wurde.
Tags und Links parsing delphi code-generation bnf gedcom