我需要迅速建立一个分析器,用于一个非常简化的版本,一个类似html标记语言。在python,我会用pyparsing库来这样做。是否有类似的东西Java?请不要建议图书馆已经有html分析,我的应用程序是一个学校分配,这将证明走一棵树的目的和将来的文本的访问者使用的模式,所以我不想在现实世界中的条款在这里。基本上所有我需要的就是标记、属性和文本节点。

有帮助吗?

解决方案

另一个好解析器发生器是 ANTLR ,这可能是你在找什么

其他提示

可能矫枉过正您的使用,但的JavaCC 是一种极佳的工业强度解析器生成器。我用这个程序/库几次,它的可靠和值得学习,尤其是如果你打算用语言和编译器的工作。下面是程序的从网站上面列出的描述:

  

的Java编译器编译[TM](JavaCC的[商标])可以与Java(TM)应用程序使用的最流行的解析器生成。解析器生成器是一种工具,读取语法规范,并将其转换为可以识别匹配的语法的Java程序。除了解析器生成器本身的JavaCC提供与解析器生成其它标准功能,如树建立(通过附带的JavaCC被叫JJTree的工具),行动,调试等。

Java中的快速搜索解析器生成器产生 JParsec 。我从来没有使用过它 - 但它是由一个Haskell库的启发,所以顾名思义它一定是好的: - )

我喜欢JParsec(它我只是发现了感谢托),因为它不会产生的代码...:-)或许不那么有效,但足够小的任务。
我发现了一个类似的图书馆, JTopas.

有一个很好的列表分析器(发电机或不是)在 Java源.

有相当在Java stringhandling一个号码的选择。 也许是非常基本的java.util.Scannerjava.util.StringTokenizer类是有帮助的吗?

另一个很好的选择也许是the org.apache.commons.lang.text库。 HTTP://commons.apache。组织/郎/ apidocs /组织/阿帕奇/公地/郎/文本/包summary.html

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top