Frage

Gibt es eine Lua Äquivalent für Python shlex Bibliothek?

War es hilfreich?

Lösung

fand ich einen Verweis auf ein Projekt namens LuaParse :

  

LuaParse umfasst Blex, einen Allzweck-pure-Lua Lexer und lparse, einen reinen-Lua Lua-Parser, sowie eine Vielzahl von Utility-Funktionen und einem Prototyp-Paket-Management-System.

Vielleicht wird dies Ihre Bedürfnisse meed.

Andere Tipps

Siehe auch LPeg .

Wenn das Ziel ist es, eine schalenartige Sprache zu analysieren (die shlex tatsächlichen Design-Ziel zu sein scheint), dann eine Grammatik in schriftlicher Form LPeg als lhf schlägt ist wahrscheinlich die richtige Antwort. Allerdings ist es nicht so einfach, eine Grammatik zu schreiben, die vollständig das Sammelsurium von geschichteten zitiert Regeln implementiert, die Schalen tatsächlich folgen. Solange Sie nicht alle gültigen /bin/sh (oder noch schlimmer, csh) Skripte korrekt zu analysieren erwarten, sollte es einfach sein, eine Grammatik zu schreiben, die nützlich ist.

Wenn das Ziel ist eigentlich eine vernünftige „kleine Sprache“ für Konfigurationsdateien oder Anwendungs-Scripting zu erstellen, dann würde ich vorschlagen, dass Lua selbst zu sein, dass die Sprache schon sehr nahe ist. Es wurde ursprünglich mit Datenbeschreibung im Auge, und seine Parser sind sehr geschickt darin sogar ziemlich große Datendeklarationen Handhabung. Siehe Abschnitt 10.1 PiL für ein Beispiel, wie Lua auf diese Weise zu verwenden. Die später Kapitel 25 rel="nofollow beschreibt die Integration von Lua mit einer größeren Anwendung für den spezifischen Anwendungsfall Konfiguration und zeigt eine Reihe von Ansätzen.

Siehe auch gg, mlp und clopts Module von Metalua .

Das sind ‚nicht ganz‘ Lua (als Metalua ist eine eigene Sprache), kann aber einige nützliche Erkenntnisse. Auch Metalua Code kompiliert in Klar Lua Bytecode, so dass es wiederverwendbar ist.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top