Dav*_*HAN 3 grammar permutation ebnf
我正在使用EBNF来定义语法.
但是我被困了因为我需要定义一个排列:我有一组可以组合的值,但它们只能使用一次而我不关心顺序.
如何使用EBNF?
示例:值:a,b,c
可能的组合:abc,acb,bac,bca,cab,cba
这种事情不能用(E)BNF表达,除了简单地手动定义每个排列:
values = "abc" | "acb" | "bac" | "bca" | "cab" | "cba" ;
Run Code Online (Sandbox Code Playgroud)