ebnf范式_(4条消息)扩展巴科斯范式(EBNF)简介

介绍

扩展巴科斯-瑙尔范式(Extended Backus–Naur Form,EBNF)是一种用于描述计算机编程语言等正式语言的与上下文无关语法的元语法(metasyntax)符号表示法。简而言之,它是一种描述语言的语言。它是基本巴科斯范式(BNF)元语法符号表示法的一种扩展。

最初由尼克劳斯·维尔特开发,最常用的EBNF变体由标准是 ISO-14977 所定义。

EBNF的基本语法形式如下,这个形式也被叫做production:

左式(LeftHandSide) = 右式(RightHandSide).

左式也被叫做 非终端符号(non-terminal symbol),而右式则描述了其的组成。

终端符号与非终端符号

终端符号(Terminal symbols):形成所描述的语言的最基本符号。所描述语言的标点符号(不是EBNF自己的)会被左右加引号(它们也是终端符号),而其他终端符号会用粗体(这边因不方便加粗,就不加粗了)打印。

非终端符号:是用于描述语法的变量,它必须被定义在一个production中。或说,它们必须出现在某个地方的production的左式中。

符号

下表是 推荐标准ISO/IEC 14977 所定义的符号:

约定

1 .使用了如下约定:

EBNF的每个元标识符(meta-identifier)都被写为用连字符(“-“,hyphens)连接起来的一个或多个单词;

以 “-symbol” 结束的元标识符是EBNF的终端符号。

2 .用普通字符表示的EBNF操作符按照优先级(顶部为最高优先级)排序为:

*repetit

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值