0

我在数据库字段中有非结构化的基因不干净的数据。有一些常见的结构在数据中是一致的

即:

field:

name:value 

fieldset: 

nombre <FieldSet>
field,
  .
  .
  .
field(n)

table

nombre <table>
head(1)... head(n)
val(1)...  val(n)
      .
      .
      .

我想知道是否有一个工具(最好是在 Java 中)可以提取学习/理解这些数据结构、解析文件并转换为我可以运行验证检查的 Map 或对象?

我知道 Antlr,但理解这更适合树结构,不是独立的数据位(我错了吗?)

有没有人对整个问题有任何建议?

4

3 回答 3

2

我推荐Talend。它是一个非常通用的开源数据集成工具。它基于java。您可以使用内置工具/组件从非结构化数据源中提取数据。您还可以编写复杂的自定义 java 代码来做您想做的事。

我在我的几个概念项目的科学证明中使用了 Talend。它对我有用。好的部分是,它是免费的!

于 2011-04-06T12:57:42.227 回答
0

我们最终为此使用了 antlr,它要求我们制作多个词法分析器,其中一个词法分析器将操纵下一个词法分析器的输入。

另一个项目是pads - 用 C 编写

于 2011-04-12T22:36:46.483 回答
0

您应该使用“bnflite” https://github.com/r35382/bnflite 使用此模板库,您需要直接在 C++ 代码中通过类和重载运算符为您的文本开发类似语法的 BNF。好处是这样的语法很容易根据您的来源进行调整

于 2017-03-01T14:06:09.193 回答