使用开源解析器 ZGLanguage : 输出扁平化、可标注的编程语言解析结果

ZGLanguage可以通过配置,对各种编程语言进行解析。

和别的语法解析器不同的是,ZGLanguage解析的结果不是语法树,而是扁平化的二维表结果,目的是让用户更加方便地使用解析结果。

另外,ZGLanguage可以对每个解析节点进行自定义标注,使得解析结果更容易分析使用。


举例说明ZGLanguage的“扁平化”和“可标注”特性:


# 解析内容:

{

    name : '张三',

  age : 23

}



# 解析配置:

__DEF_STR__   __NAME__

<1,100>

[1,1]ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz_??

[0,100]ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789_??

 

 

__DEF_STR__   __INT__

<1,100>

[1,100]0123456789

 

 

__DEF_SUB_PATH__   __STRING__

1       : 左引号                     | '

        : 内容                       | __ANY__

        : 右引号                     | '

 

__DEF_PATH__   __DICT__

1       : 左括号      | {

N       : key          | __NAME__

        : 冒号          | :

        : int_val       | __INT__

        : str_val      + __STRING__

e       : 逗号         | ,

1       : 右括号      | }



# 解析结果:








2025-12-31 11:44:01 | 数据血缘测试帐号 | 技术 & 提问 | 阅读181次

回 复 :