14

BNF または ABNF は否定をサポートしていますか。つまり、セットの特定のメンバーを除外しますか? 構文にそのような否定演算子は見当たりませんでした。

たとえば、が次と等しくないSすべての英数字文字列のセットである とします。"foo"S

4

2 に答える 2

8

文脈自由文法は、「差異」または「補数」の下で閉じられません。そのため、BNF に演算子「減算」を追加することに決めたとしても、それを表現する簡単な方法があったとしても、結果は文脈自由文法にはなりません。結果: 人々は、文脈自由文法を表現するために使用される BNF 文法でそのような演算子を許可しません。

于 2012-06-06T21:15:20.700 に答える