讨论:关于正则表达式生成

zhslsnow 2008-10-28 11:37:04
有一段时间,在研究正则表达式,很想研究一个自动生成正则表达式的算法。希望大家给点思路~我想到的是学校学的做编译器的方法,不知是否可行,若可行的思路是怎样的?前几天找到一个外国的一个自动生成正则表达式的工具,很不错,说明自动生成正则是可以的。请大家指点,谢谢!
...全文
243 21 打赏 收藏 转发到动态 举报
写回复
用AI写文章
21 条回复
切换为时间正序
请发表友善的回复…
发表回复
zhslsnow 2008-10-31
  • 打赏
  • 举报
回复
看来我需要理清一下思路再开展了,谢谢大家的回复~至于我所说的自动生成正则表达式的工具后来发现确实是言过其实了,只是字典的方式生成,没有达到自动的程度,并非是传说中的“大杀器”,请大家见谅,就此结贴,有机会再讨论……
jack20080808 2008-10-30
  • 打赏
  • 举报
回复
反向生成这个可是个相当难的论题啊,没理由不支持,你能把你那个国外的工具发一下吗?我不怎么相信哦.
zhslsnow 2008-10-30
  • 打赏
  • 举报
回复
难道这是一个难点课题?改为散分贴,回复切中主题的多得分~
DavidNoWay 2008-10-30
  • 打赏
  • 举报
回复
这个已经有了吧…………
gdf2627 2008-10-30
  • 打赏
  • 举报
回复
强人太多了
7707 2008-10-30
  • 打赏
  • 举报
回复
俺 不 信
christ2 2008-10-30
  • 打赏
  • 举报
回复
正则表达式已经就是一个规律的描述了,你现在要做一个描述规律的规律吗?我不认为你能做的比它更好。
cteddy 2008-10-30
  • 打赏
  • 举报
回复
[Quote=引用 12 楼 zhslsnow 的回复:]
难道这是一个难点课题?改为散分贴,回复切中主题的多得分~
[/Quote]
不是难点
这是遗传算法的精髓
美国人研究了这么多年了
也没有实现真正智能
所以我不相信能这么强
sxmonsy 2008-10-30
  • 打赏
  • 举报
回复
强烈要求LZ共享下你的那个工具.
magicbacon 2008-10-29
  • 打赏
  • 举报
回复
遗传算法和神经网络,多年前学过皮毛。
HimeTale 2008-10-29
  • 打赏
  • 举报
回复
一言难尽~~~
你查查进化算法(也叫遗传算法)或者神经网络的相关资料吧
weilong147247943 2008-10-29
  • 打赏
  • 举报
回复
[Quote=引用 6 楼 zhslsnow 的回复:]
生成工具在google搜索一下咯。我想要的不是工具,是一个思路而已啦~
[/Quote]
共享,共享,共享,共享,共享
kfps8kfps8 2008-10-29
  • 打赏
  • 举报
回复
能自动生成,这么强,共享出来!
zhslsnow 2008-10-29
  • 打赏
  • 举报
回复
没人知道么?自己顶一下
ZKM_ZHANG 2008-10-28
  • 打赏
  • 举报
回复
不会吧,这么强!!!
cteddy 2008-10-28
  • 打赏
  • 举报
回复
什么叫自动生成?
不懂啊
给个字符叫电脑自动看看规律??
zhslsnow 2008-10-28
  • 打赏
  • 举报
回复
生成工具在google搜索一下咯。我想要的不是工具,是一个思路而已啦~
wuhq030710914 2008-10-28
  • 打赏
  • 举报
回复
工具共享一下,先
编程有钱人了 2008-10-28
  • 打赏
  • 举报
回复
up
zhslsnow 2008-10-28
  • 打赏
  • 举报
回复
我希望的最好结果是:给出规则生成正则,例如给出E-Mail的格式,生成匹配的正则。
至于规则的表现形式,就需要讨论了。我求的是一个思路,算法更好咯~
内容简介编辑 本书采用通俗的语言和形象化的方法来表达概念和定理,逻辑严谨、思维缜密,可作为高等院校计算机及相关专业“形式语言与自动机”课程的教材。 [1] 作者简介编辑 陈有祺,南开大学信息技术科学学院教授,多年来一直从事计算机软件方面的教学和研究工作,从1993年起享受国务院政府特殊津贴。讲授的课程主要有程序设计语言.编译原理,数据结构、形式语言与自动机等,研究领域包括编译理论、人工智能、自然语言理解,形式语言等。1980年至1982年在美国西密歇根大学作访问学者,研修人工智能和形式语言,回国后一直为研究生讲授“形式语言与自动机”课程。相关著作包括:《BCLR(k)文法及其分析算法》、《广义上下文无关文法和它的语法分析》、《从输入输出序列确定自动机的结构》,《形式语言与自动机》等。 编辑推荐编辑 本书以四类形式语言(短语结构语言,上下文有关语言。上下文无关语言。正则语言)和四种自动机(有穷自动机、下推自动机.图灵机,线性有界自动机)为主线,讨论了形式语言与自动机方面的主要理论成果和应用实例。 本书的主要特色: 取材丰富。涵盖了该领域国内外现有教材的主要内容。 在写作方法上,循序渐进,深入浅出。在概念的引入和定理的证明上,尽量采用通俗的语言和形象化的方法来表达。 理论与实际相结合。除具有配合定理和定义的大量例题外,许多章节还有现代计算机技术中应用的实例。 适应面广。既适合作为本科生的教材,也适合作为研究生的教材。 图书目录编辑 出版者的话 序言 前言 教学建议 第1章 预备知识 1.1 定理及其证明方法 1.1.1 演绎法 1.1.2 反证法 1.1.3 归纳法 1.2 集合及其基本运算 1.2.1 集合基础知识 1.2.2 集合的基本运算 1.2.3 关系与映射 1.3 图和树简介 1.3.1图的基本概念 1.3.2图的矩阵表示 1.3.3 树的基本知识 1.4 字母表、字符串和语言 习题 第2章 文法的一般理论 2.1 问题的提出 2.2 形式文法与形式语言 2.3 文法的乔姆斯基分类 习题 第3章 有穷自动机 3.1 非形式化描述 3.2 有穷自动机的基本定义 3.3 非确定的有穷自动机 3.4 具有£转移的有穷自动机 3.5 有穷自动机的应用 3.5.1 在文本中查找字符串 3.5.2 用于文本搜索的非确定的有穷自动机 3.5.3 识别关键字集合的DFA 3.6 具有输出的有穷自动机 习题 第4章 正则表达式 4.1 正则表达式的定义 4.2 正则表达式和有穷自动机的关系 4.3则表达式的等价变换 4.3.1 交换律与结合律 4.3.2 单位元与零元 4.3.3 分配律 4.3.4 与“*”构造有关的定律 4.3.5 发现正则表达式定律的一般方法 4.4 正则表达式的应用 4.4.1UNIX中的正则表达式 4.4.2 词法分析 4.4.3 查找文本中的模式 习题 第5章正则语言的性质 5.1 正则文法和有穷自动机的关系 5.2 正则语言的泵引理 5.3 正则语言的封闭性 5.4 正则语言的判定算法 5.5 有穷自动机的最小化 习题 第6章 上下文无关文法 6.1上下文无关文法的语法分析 6.2 上下文无关文法的化简 6.3 上下文无关文法的范式 6.4 上下文无关文法的应用 6.4.1 用上下文无关文法描述语言 6.4.2 语法分析器生成工具YACC …… 第7章 下推自动机 第8章 上下文无关语言的性质 第9章 图灵机导引 第10章 不可判定性 第11章 线性有界自动机和上下文有关文法 第12章 确定的上下文无关语言和LR(k)文法 参考文献 …… 参考资料
请注意这是第一部分,第二部分在 http://download.csdn.net/source/173602 这就是有"龙书"之称的编译原理方面的书还有本"虎书"之称的不知道谁共享一下.由于大于30m所以分两部分. 作为编译器设计的教程,本书重点主要放在解决在设计语言翻译器过程中所普遍面对的一些问题上而并不考虑源语言或者目标机器。本书共12章:第一章介绍了编译器的基本结构;第二章给出了一个将前缀表达式转换成后缀表达式的编译器,主要使用本书的一些基本技巧来构建;第三章阐述了词法分析、正则表达式、有限自动机和扫描生成器工具,这章中的技术广泛应用于文本处理;第四章详细阐述了主要的分析技术,从适合手工实现的递归下降算法到在分析生成器中使用的LR算法;第五章介绍了语法制导翻译中的主要思想,本书的其它部分都用本章来说明和实现翻译;第六章提出了完成静态语义检查的主要思想,并对类型检查和类型的统一进行了详细的讨论;第七章讨论了支持应用程序运行时环境的存储组织;第八章从中间语言的讨论开始,说明了编程语言结构翻译成中间代码;第九章阐述了目标代码的生成,包含基本的on_the_fly代码生成方法、为表达式生成代码的优化方法、Peephole优化和代码生成器;第十章是代码优化的总述。除了关于数据流分析方法的详细说明,还有关于如何进行全局优化的基本方法;第十一章讨论了在编译器实现过程中可能会产生的一些实际问题;第十二章提出一些使用本书中的技术构建的一些编译器的学习用例。本书可作为高校计算机专业本科和研究生编译原理的教科书,也可供从事计算机软件开发的人员参考。

62,064

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧