解析表達文法

在計算機科學領域 ， 解析表達文法 ， 簡稱PEG  ， 是一種分析型形式文法 。 PEG在2004年由布萊恩 · 福特 （ Bryan Ford ） 推出 ， ， 它與20世紀70年代初引入的家族密切相關 。 在語法上 ， PEG很接近上下文無關文法 （ CFG ） ， 但是他們採用了不同的解釋 ： 例如PEG中的選擇操作符總是會選中第一個匹配項 ， 而在CFG中則是不明確的 。 這更接近於字符串識別在實際中的應用 ， 例如使用遞歸下降解析器的情況 。 另外不像CFG ， PEG不能有 ： 在解析一個字符串的時候 ， 只能有單一確定的語法分析樹 。 據推測 ， 存在上下文無關語言 ， 不能用PEG處理 ， 但尚未得到證實 。 這個特性使得PEG更適合計算機語言的解析 ， 對於一般的CFG算法 （ 如 ） 的性能可以與之比擬的自然語言就不是很合適 。