计算机科学教科书的方式做textxml 无论解析

计算机科学教科书的方式做textxml 无论解析,第1张

概述它已经在我的大脑中徘徊了一段时间. 我对Compilers / Flex / Byson和其他东西进行了一些调查,但是我从来没有找到一个很好的参考,详细讨论了“解析堆栈”,或者如何实现它. 有谁知道我能赶上的好参考? 编辑:我非常感谢所有的编译器参考,我将会列出一些书籍,但我主要关注的是解析本身,而不是你之后用它做什么. 这是对Dima的答案的回应,你接受了正确的答案.虽然说解析与自动机理论有关并 它已经在我的大脑中徘徊了一段时间.

我对Compilers / Flex / Byson和其他东西进行了一些调查,但是我从来没有找到一个很好的参考,详细讨论了“解析堆栈”,或者如何实现它.

有谁知道我能赶上的好参考?

编辑:我非常感谢所有的编译器参考,我将会列出一些书籍,但我主要关注的是解析本身,而不是你之后用它做什么.

解决方法 这是对Dima的答案的回应,你接受了正确的答案.虽然说解析与自动机理论有关并不是一个坏的答案,但我觉得这里存在一些误解.

>首先,有限状态自动机只能识别常规语言(例如正则表达式).为了识别无上下文语言,您需要更强大的下推自动机.有关更多自动机及其与不同类别语言的关系,请参阅http://en.wikipedia.org/wiki/Automata_theory#Classes_of_automata.
>其次,解析不同于识别.识别字符串只会告诉您该字符串是否使用语法生成的语言.解析器的目的是生成一个更具有硬度且通常更有用的具体语法树.

那里有各种各样的解析方法,所以很难给你一个具体的参考资料来告诉你你需要知道的东西……一般来说,你应该理解top-down parsing和bottom-up parsing之间的区别.但这里是一个概述在您感兴趣的情况下,解析器生成器使用的一些常用技术:

>维基百科文章LR Parsing,LL Parsing,SLR Parsing,LALR Parsing,GLR Parsing
> ANTLR的LL(*) parsing
> Monadic Parsing in Haskell(用于在函数式编程语言中构建解析器)
>而且更具异国情调的Parsing Expression Grammars

编辑:
我很抱歉再次提出这个问题,我刚刚发生了两篇很好的帖子,描述了regular languages and finite automata,context-free languages and push-down automata之间的关系.对于发现这个问题的人来说,可能会很有趣.

总结

以上是内存溢出为你收集整理的计算机科学教科书的方式做text / xml /无论解析全部内容,希望文章能够帮你解决计算机科学教科书的方式做text / xml /无论解析所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/1049820.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-25
下一篇 2022-05-25

发表评论

登录后才能评论

评论列表(0条)

保存