巴科斯范式

王朝百科·作者佚名  2010-01-27
窄屏简体版  字體: |||超大  

巴科斯范式(BNF: Backus-Naur Form 的缩写)描述计算机语言语法的符号集

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

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

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

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

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

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

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

巴科斯范式示例

下面是用BNF来定义的Java语言中的For语句的实例:

FOR_STATEMENT ::=

"for" "(" ( variable_declaration |

( expression ";" ) | ";" )

[ expression ] ";"

[ expression ] ";"

")" statement

这是用BNF来定义的BNF本身的例子:

syntax ::= { rule }

rule ::= identifier "::=" expression

expression ::= term { "|" term }

term ::= factor { factor }

factor ::= identifier |

quoted_symbol |

"(" expression ")" |

"[" expression "]" |

"{" expression "}"

identifier ::= letter { letter | digit }

quoted_symbol ::= """ { any_character } """

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
 
 
© 2005- 王朝網路 版權所有 導航