Open nagisc007 opened 6 years ago
規則Pとは「A ← e」であり、Aは非終端記号、eは記号、またはメタ記号の列である
非終端記号は、再帰下降構文解析における構文解析関数を表現しており、parsing expression は関数とみなせる。各関数は引数として「入力文字列」をとり、次のいずれかの結果を返す
e1、e2の並びでは、まずe1が評価され、成功なら、文字列を消費して、次にe2で評価する。e1かe2のいずれかが失敗した場合は「全体が失敗」とみなす。
e1/e2では、まずe1で評価し、成功ならただちにその結果が返される(e2は評価しない)。e1が失敗の場合は、e1で文字列を消費しない状態にバックトラックし、e2で評価する。
PEG (Parsing Expression Grammar) の基本についてまとめておきます。