我正在使用EBNF来定义一个语法。
但是我被卡住了,因为我需要定义一个排列:我有一组可以组合的值,但它们只能使用一次,而且我不关心顺序。
如何使用EBNF做到这一点?
示例:取值: a,b,c
可能的组合: abc、acb、bac、bca、cab、cba
发布于 2012-07-17 02:33:50
这样的事情不能用(E)BNF来表达,只能简单地手动定义每个排列:
values = "abc" | "acb" | "bac" | "bca" | "cab" | "cba" ;https://stackoverflow.com/questions/11504011
复制相似问题