Учитывая правило PEG:
rule = element1:'abc' element2:'def' element3:'ghi' ;
Как мне переписать это так, чтобы оно соответствовало хотя бы одному из элементов, но, возможно, всем, обеспечивая их порядок?
т.е. Я хотел бы сопоставить все следующие строки:
abc def ghi
abc def
abc ghi
def ghi
abc
def
ghi
но не пустая строка или неправильно упорядоченные выражения, например. def abc
.
Конечно, с тремя элементами я мог бы описать комбинации в отдельных правилах, но по мере увеличения количества элементов это становится подверженным ошибкам.
Есть ли способ указать это в краткой форме?