巴科斯范式

简介: PS: 巴科斯范式,很多的linux手册以及各种软件的官方文档,所有稍微复杂点儿的语法规则几乎都是它定义的! 巴科斯范式(BNF: Backus-Naur Form 的缩写)是由 John Backus 和Peter Naur首先引入的用来描述计算机语言语法的符号集。现在,几乎每一位新编程语言书籍的作者都使用巴科斯范式来定义编程语言的语法规则。     巴科斯范式的内容   
PS: 巴科斯范式,很多的linux手册以及各种软件的官方文档,所有稍微复杂点儿的语法规则几乎都是它定义的!

巴科斯范式(BNF: Backus-Naur Form 的缩写)是由 John Backus 和Peter Naur首先引入的用来描述计算机语言语法的符号集。现在,几乎每一位新编程语言书籍的作者都使用巴科斯范式来定义编程语言的语法规则。  
 
巴科斯范式的内容 
 

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

巴科斯范式示例  

例如用BNF来定义的Java语言中的For语句的实例:

FOR_STATEMENT ::= "for" "(" ( variable_declaration | (expression ";" ) | ";" ) [ expression ] ";" [ expression ] ";" ")" statement

目录
相关文章
|
机器学习/深度学习 编解码 运维
MATLAB高阶谱分析工具箱(HOSA)解析
MATLAB高阶谱分析工具箱(HOSA)解析
|
供应链 数据可视化 BI
多平台数据整合工具新趋势:支持API实时联动的看板方案
在电商运营中,数据分散在多个平台导致效率低下、决策滞后。数据整合看板工具通过聚合多源数据,实现可视化、实时同步与低门槛操作,帮助团队高效利用数据,提升运营效率与决策质量。
|
缓存 边缘计算 运维
基于 Cloudflare Workers 构建高性能知识库镜像服务:反向代理与 HTML 动态重写实践
基于Cloudflare Workers构建的边缘计算镜像服务,通过反向代理、HTML动态重写与智能缓存,优化维基百科等知识平台的访问性能。支持路径映射、安全头清理与容错回退,实现免运维、低延迟、高可用的Web加速方案,适用于教育、科研等合规场景。
1732 8
|
存储 安全 关系型数据库
技术人必修课:利用金字塔原理高效思考与表达
作者写这篇文章的目的就是希望能够帮助更多同学了解金字塔原理并合理应用,不只是写作,更是要着眼于思考和表达。本文将围绕认识金字塔结构、表达的逻辑、思考的逻辑、解决问题的框架、演示的逻辑这几个方面带领大家深入学习金字塔原理。
|
存储 固态存储
硬盘对拷(硬盘复制)操作指南
硬盘对拷是将一硬盘所有数据、设置及系统文件完全复制到另一硬盘的过程,确保信息完整传递。此操作不仅涉及复制,更注重数据的准确性和完整性。该技巧常用于数据恢复、系统迁移和备份。使用工具如DiskGenius可高效完成,但需注意备份目标盘数据,正确选择源盘和目标盘,避免数据损失。操作包括选择源盘和目标盘,选择数据传输模式,然后确认并执行拷贝过程。
|
存储 缓存 固态存储
阿里云服务器2核8G、4核16G、8核32G配置租用收费标准与活动价格参考
2核8G、8核32G、4核16G配置的云服务器处理器与内存比为1:4,这种配比的云服务器一般适用于中小型数据库系统、缓存、搜索集群和企业办公类应用等通用型场景,因此,多为企业级用户选择。本文介绍这些配置的最新租用收费标准与活动价格情况,以供参考。
|
JavaScript
el-table 使用了 修改行使用了v-model双向绑定 如何记录修改前的数据
el-table 使用了 修改行使用了v-model双向绑定 如何记录修改前的数据
602 2
|
SQL Oracle 关系型数据库
|
存储 JavaScript Python
word文档转成Markdown文档并在Typora免费版添加图床-----想想都很香
word文档转成Markdown文档并在Typora免费版添加图床-----想想都很香
1379 0
|
开发工具 git
vscode 将已修改代码提交推送git时一直转圈也没有反馈
vscode 将已修改代码提交推送git时一直转圈也没有反馈
3312 0

热门文章

最新文章