Python Lua相当于shlex?
python的库是否有Lua等价物?我找到了一个项目的参考,名为: LuaParse包括Blex(一个通用的纯Lua lexer)和lparse(一个纯Lua Lua解析器),以及各种实用函数和一个原型包管理系统Python Lua相当于shlex?,python,parsing,lua,command-line-arguments,Python,Parsing,Lua,Command Line Arguments,python的库是否有Lua等价物?我找到了一个项目的参考,名为: LuaParse包括Blex(一个通用的纯Lua lexer)和lparse(一个纯Lua Lua解析器),以及各种实用函数和一个原型包管理系统 也许这将满足您的需要。另请参见。另请参见来自的gg、mlp和clopts模块 这些都是“不完全”的Lua(因为Metalua是一种独立的语言),但可能提供一些有用的见解。Metalua代码也可以编译成普通的Lua字节码,因此它是可重用的。如果目标是解析类似shell的语言(这似乎是sh
也许这将满足您的需要。另请参见。另请参见来自的
gg
、mlp
和clopts
模块
这些都是“不完全”的Lua(因为Metalua是一种独立的语言),但可能提供一些有用的见解。Metalua代码也可以编译成普通的Lua字节码,因此它是可重用的。如果目标是解析类似shell的语言(这似乎是shlex的实际设计目标),那么用as编写语法可能是正确的答案。然而,编写一个完全实现Shell实际遵循的分层引用规则的语法并不是那么容易。只要您不希望正确解析所有有效的
/bin/sh
(或者更糟的是,csh
)脚本,那么编写一个有用的语法应该很简单
如果目标实际上是为配置文件或应用程序脚本创建一种合理的“小语言”,那么我建议Lua本身已经非常接近于这种语言。它最初设计时考虑了数据描述,其解析器非常擅长处理甚至相当大的数据声明。有关如何以这种方式使用Lua的示例,请参见。后者描述了针对特定的配置用例将Lua与更大的应用程序集成,并演示了许多方法。我最初问这个问题是因为我认为shlex是一个命令行解析工具:)