您的位置:首页 > 其它

BNF范式

2012-06-09 23:07 351 查看
巴科斯范式义同BNF范式(BNF:
Backus-Naur Form 的缩写)描述计算机语言语法的符号集

  在双引号中的字("word")代表着这些字符本身。而double_quote用来代表双引号。

  在双引号外的字(有可能有下划线)代表着语法部分。

  尖括号( < > )内包含的为必选项。

  方括号( [ ] )内包含的为可选项。

  大括号( { } )内包含的为可重复0至无数次的项。

  竖线( | )表示在其左右两边任选一项,相当于"OR"的意思。

  ::= 是“被定义为”的意思。

巴科斯范式示例

finger查询请求的BNF(巴克斯-诺尔范式)定义如下:

--------------------------------------------------------------------------

{Q1} ::= [{W}|{W}{S}{U}]{C}

{Q2} ::= [{W}{S}][{U}]{H}{C}

{U} ::= username

{H} ::= @hostname | @hostname{H}

{W} ::= /W

{S} ::= <SP> | <SP>{S}

{C} ::= <CRLF>

<CRLF>

\r\n,即\x0D\x0A

<SP>

空格,即\x20。

{S}

这个是递归定义的,意味着空格可以重复任意次数。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: