美文网首页源码与文档分享
基于swift的词法分析程序

基于swift的词法分析程序

作者: UlricaLee | 来源:发表于2019-08-03 18:11 被阅读1次

一、编写环境

OS X 10.11.6

Xcode7.3.1

Swift2.2

二、大致过程

计算正则式:

读入正则表达式

对正则表达式处理、建图、生成 ε-NFA

将 ε-NFA 去除空节点、转化为 NFA

将 NFA 转化为 DFA

对 DFA 图进行遍历每个节点,获取到每个节点通过某个字符到达哪下一个状态, 并找到终态、构造 DFA 表、输出显示

验证字符串:

在成功通过正则表达式构建 DFA 图的基础上,读入任意字符串 从字符串第一个字符、DFA 图的第一个节点开始

判断是否有当前的字符串的字符可以使当前的 DFA 图节点走到下一个节点

若有,则走向下一个节点,重复 2 操作,若无,则返回 false

当字符串从头到尾监测完成后,判断当前所在节点是否是终态节点,若是,则返 回 true,反之则返回 false

点击下载源码

相关文章

  • 基于swift的词法分析程序

    一、编写环境 OS X 10.11.6 Xcode7.3.1 Swift2.2 二、大致过程 计算正则式: 读入正...

  • PL/0简单编译系统(二)

    词法分析 词法分析又称词法分析器或者扫描器,是编译程序的基本子程序之一。本项目采用手工方式设计并实现词法分析程序。...

  • 编译原理-词法分析笔记

    词法分析的目的 词法分析的目的,是将源程序读入并且转化为记号流。读入的源程序,我们称之为字符流,而经过词法分析之后...

  • 编译原理笔记

    源程序分析: 词法分析 :线性分析 被称为词法分析 或者扫描比如:position=init+rate * 60 ...

  • 基于Java实现的词法分析程序

    此程序用Java语言编写。程序读入一个内含程序语句的文本文件,对其中的内容进行分析,最终输出形式为

  • 基于JAVA实现的基于DFA的词法分析程序

    1 实验目的 根据自己确定的正规表达式,编写、调试一个词法分析程序,对语句进行词法分析,从而更好理解词法分析原理。...

  • 龙书 第三章

    词法单元:词法分析器扫描源程序并输出一个由词法单元组成的序列。这些词法单元通常会逐个传送给语法分析器。有些词法单元...

  • 词法分析之基于文法的实现

    一、设计目的 通过设计编制调试一个具体的词法分析程序,加深对词法分析原理的理解。并掌握在对程序设计语言源程序进行扫...

  • 词法分析之基于文法的实现

    一、设计目的 通过设计编制调试一个具体的词法分析程序,加深对词法分析原理的理解。并掌握在对程序设计语言源程序进行扫...

  • 编译原理->词法分析

    词法分析器的作用 词法分析器的主要任务是读入源程序的输入字符、将它们组成词素,生成并输出一个词法单元序列,每个词法...

网友评论

    本文标题:基于swift的词法分析程序

    本文链接:https://www.haomeiwen.com/subject/fqfsdctx.html