Ich muss einige spezielle Datenstrukturen parsen. Sie liegen in einem irgendwie ähnlichen C-Format vor, das ungefähr so aussieht:
Group("GroupName") {
/* C-Style comment */
Group("AnotherGroupName") {
Entry("some","variables",0,3.141);
Entry("other","variables",1,2.718);
}
Entry("linebreaks",
"allowed",
3,
1.414
);
}
Ich kann mir mehrere Möglichkeiten vorstellen, dies zu tun. Ich könnte den Code mit regulären Ausdrücken "tokenisieren". Ich könnte den Code zeichenweise lesen und eine Zustandsmaschine verwenden, um meine Datenstruktur zu erstellen. Ich könnte die Komma-Zeilenumbrüche weglassen und den Code Zeile für Zeile lesen. Ich könnte ein Konvertierungsskript schreiben, das diesen Code in ausführbaren Python-Code umwandelt.
Gibt es eine schöne pythonic Weg, um Dateien wie diese zu parsen?
Wie würden Sie es analysieren?
Dies ist eher eine allgemeine Frage zum Parsen von Zeichenketten und nicht so sehr zu diesem speziellen Dateiformat.