编译原理_文法分析_匹配括号

问题描述

括号匹配大概有一下情况需要考虑

对于只有圆括号的情况

  • 并列括号
    • ()()...()
  • 嵌套括号
    • ((..))
  • 混合括号对
    • ((..()()..))

参考文法(猜测)

单种括号

ϵ \epsilon ϵ表示空串

G ( S ) = S ( S ) S ∣ ϵ G(S)=S(S)S|\epsilon G(S)=S(S)Sϵ

这所以一个递归的产生式

混合了方括号和小括号的情况

譬如

(([]())[])

G ( S ) = S ( S ) S ∣ S [ S ] S ∣ ϵ G(S)=S(S)S|S[S]S|\epsilon G(S)=S(S)SS[S]Sϵ

文法推导的时候,可以先推导嵌套

在推导并列

posted @ 2023-06-12 16:28  xuchaoxin1375  阅读(43)  评论(0)    收藏  举报  来源