扩展的BNF语法可选[...]表示法

时间:2013-07-25 06:33:55

标签: ebnf

我在这个表示法{@ 1}}中阅读,[x],y是可选的,但我无法理解可选的含义。这是否意味着,可能有xy或其他内容?任何人都可以举一些这方面的例子吗?

1 个答案:

答案 0 :(得分:4)

有关[]的文档:

  

可选:[]之间的项目是可选的。括号中的所有项目都包括在内。

EBNF []中代表可以省略的可选参数,因此[x],y定义了yxy的可能性。

示例:

Bicycle_Accessories = saddle [bell | horn] {water_bottle_holders}

定义了下一个可能性:

saddle 
saddle bell 
saddle horn 
saddle water_bottle_holder 
saddle bell water_bottle_holder 
saddle bell water_bottle_holder water_bottle_holder