プロジェクトに pegjs パーサー ジェネレーターを使用していますが、一致してはならない単語のコレクションまで、すべての単語に一致する文法を作成するのに苦労しています。文字列 "the door is yellow" の例として、 is までのすべての単語を一致させたいので、単語 is から解析を開始するように pegjs パーサーに指示します。パーサーにブレークさせたい単語のコレクションは、「is」「has」および「of」です。
現在の文法規則は次のとおりです。
subject "sub" =
s:[a-zA-Z ]+ { return s.join("").trim()}
パーサーが私のコレクションを単語に含めないようにするルックアヘッドを作成するにはどうすればよいですか?
(!of|is|has)