巴科斯范式BNF

一. 巴科斯范式BNF

巴科斯范式的英文缩写为BNF,它是以美国人巴科斯(Backus)和丹麦人诺尔(Naur)的名字命名的一种形式化的语法表示方法,用来描述语法的一种形式体系,是一种典型的元语言。又称巴科斯-诺尔形式(Backus-Naur form)。它不仅能严格地表示语法规则,而且所描述的语法是与上下文无关的。它具有语法简单,表示明确,便于语法分析和编译的特点。

BNF表示语法规则的方式为:

  • 非终结符用尖括号括起。
  • 每条规则的左部是一个非终结符,右部是由非终结符和终结符组成的一个符号串,中间一般以::=分开。
  • 具有相同左部的规则可以共用一个左部,各右部之间以直竖“|”隔开。

BNF中常用的元字符及其表示的意义如下:

在双引号中的字 "word" 代表着这些字符本身。而double_quote用来代表双引号;
在双引号外的字(有可能有下划线)代表着语法部分;
尖括号 < > 内包含的为必选项;
方括号 [ ] 内包含的为可选项;
大括号 { } 内包含的为可重复0至无数次的项;
圆括号 ( ) 内包含的所有项为一组,用来控制表达式的优先级;
竖线 | 表示在其左右两边任选一项,相当于"OR"的意思;
::= 是“被定义为”的意思;
...  表示术语符号;
斜体字: 参数,在其它地方有解释;



作者:科研者
链接:https://www.jianshu.com/p/15efcb0c06c8
來源:简书
简书著作权归作者所有,任何形式的转载都请联系作者获得授权并注明出处。

发布了39 篇原创文章 · 获赞 30 · 访问量 4万+

猜你喜欢

转载自blog.csdn.net/HU_YEWEN/article/details/84780262
BNF