代码之家  ›  专栏  ›  技术社区  ›  AboutDev

用dsl解析文档

  •  0
  • AboutDev  · 技术社区  · 15 年前

    我正试图想出一种方法来浏览大约一百万个正式文档(为了论证起见,它们是论文文档)。它们并不都是标准化的,但已经足够接近了。它们是标题、章节、段落等。可能会出现微妙的差异,例如在英语中,我们称标题为“title”,但在法语中,它是“titre”。

    因此,在我看来,最好的方法是创建一个ebnf,其中包含title:=title titre的所有可能组合。

    我不太关心是否能提出ebnf。我主要关心的是如何实现解析。我看过安特尔、奥斯陆、讽刺和其他很多地方,但没有专业知识来判断它们是否适合我的任务。

    所以,我向你们中的学者提出的问题是

    1. 对于这种规模的文档解析,您建议使用哪种dsl工具?
    2. 什么样的dsl工具在解析时最准确,但在匹配时却可以忽略(即,我们必须定义大小写规则,数字对罗马数字和外语(法语)如何)。
    3. 有没有一个过程/算法我没有考虑过,你会推荐作为DSL的替代品?(从头开始重写是一种选择,但我想让一些工作迅速)。
    4. 有没有人试图通过dsls(想想遗传算法和神经网络)将学习和智能添加到解析算法中?
    5. 你会在生产环境中使用这些dsl工具吗?

    我选择的开发平台是C。我之所以提到这一点,是因为理想情况下,我希望将dsl工具集成到代码中,以便我们可以从现有的应用程序中使用它。

    1 回复  |  直到 15 年前
        1
  •  0
  •   AboutDev    15 年前

    我遇到一个叫做 TinyPG . 这并不完全是我所需要的,但是有了源代码可以让我生成我所需要的。