PEG ルールを考えると、次のようになります。
rule = element1:'abc' element2:'def' element3:'ghi' ;
要素の少なくとも 1 つに一致するように、しかしおそらくすべての要素に一致するように、これを書き直すにはどうすればよいですか?
つまり、次のすべての行に一致させたいと思います。
abc def ghi
abc def
abc ghi
def ghi
abc
def
ghi
ただし、空の文字列や誤った順序の式ではありませんdef abc
。
もちろん、要素が 3 つの場合は、別のルールで組み合わせを詳しく説明できますが、要素の数が増えると、エラーが発生しやすくなります。
これを簡潔に指定する方法はありますか?