json文法

JSON文法:

json -> num|str|true|false|array|obj

obj -> {optmembers}

optmembers -> members|ε

members -> members,member|member

member -> key:value

value -> json|null

array -> [optelements]

optelements -> elements|ε

扫描二维码关注公众号,回复: 11139080 查看本文章

elements -> elements,element|element

element -> json|null

*斜体字为非终结符;粗体为终结符

消除左递归:

members -> memberA

A -> ,member|ε

 

elements -> elementB

B -> ,element|ε

 

最终文法:

json -> num|str|true|false|array|obj

obj -> {optmembers}

optmembers -> members|ε

members -> memberA

A -> ,member|ε

member -> key:value

value -> json|null

array -> [optelements]

optelements -> elements|ε

elements -> elementB

B -> ,element|ε

element -> json|null

终结符:

num str true false { } , key : null [ ] ε

非终结符:

json array obj optmembers members member A value optelements elements B element

猜你喜欢

转载自www.cnblogs.com/stronger-brother/p/12787433.html
今日推荐