有没有与python的shlex库等效的Lua?
发布于 2009-12-05 20:46:08
我找到了一个名为LuaParse的项目的引用
LuaParse包括Blex,一个通用的纯Lua lexer和lparse,一个纯Lua解析器,以及各种实用函数和原型包管理系统。
也许这能满足你的需求。
发布于 2009-12-06 05:03:31
另请参见LPeg。
发布于 2009-12-08 05:26:45
如果目标是解析类似外壳的语言(这似乎是shlex的实际设计目标),那么以lhf suggests的形式在LPeg中编写语法可能是正确的答案。然而,要编写一个完全实现shell实际遵循的分层引用规则大杂烩的语法并不是那么容易。只要您不希望正确地解析所有有效的/bin/sh (或者更糟糕的是,csh)脚本,那么编写一个有用的语法应该是很简单的。
如果我们的目标实际上是为配置文件或应用程序脚本创建一种合理的“小语言”,那么我建议Lua本身已经非常接近成为这种语言了。它最初的设计考虑到了数据描述,它的解析器非常擅长处理即使是相当大的数据声明。有关如何以这种方式使用Lua的一个示例,请参阅section 10.1 of PiL。后面的chapter 25描述了Lua与更大的应用程序的集成,用于配置的特定用例,并演示了许多方法。
https://stackoverflow.com/questions/1851940
复制相似问题