我正在为一个简单的命令语言(Visual TrueType)开发一个解析器/代码转换器。它使用C风格的注释,但接受嵌套它们。 pyparsing.cStyleComment
对此嗤之以鼻,所以我正在寻找别的东西。
输入看起来像(注意所有内容都已注释掉):
/* VTTTalk glyph 1023, char 0xffff */
/* GUI generated Tue Jul 08 15:52:37 2014 */
/* Y direction
YAnchor(255)
YDist(305,433,>=)
[...]
/* X direction */
Smooth()
*/
我想在注释中使用间距/换行获得以下解析后的输出:
["/* VTTTalk glyph 1023, char 0xffff */",
"/* GUI generated Tue Jul 08 15:52:37 2014 */",
"/* Y direction\nYAnchor(255)\nYDist(305,433,>=)\n[...]\n\n/* X direction */\n\nSmooth()\n*/"]
到目前为止,我至少可以使用nestedExpr(opener="/*", closer="*/")
保留一般结构并附加一个解析动作(递归地)生成一个C风格的注释字符串,但是会丢失注释的格式。有没有规范的方法呢?