【问题标题】:Finding "untagged" content in XML files using DocumentBuilder/Document in Java使用 Java 中的 DocumentBuilder/Document 在 XML 文件中查找“未标记”内容
【发布时间】:2012-11-21 20:27:38
【问题描述】:

我必须解析一个 XML 文档。我正在使用 javas DocumentBuilder 类来创建一个文档。 xml文件的结构如下:

<text>
    <something>
        <word>
            Someword
        </word>
    </something>
    <something>
        <word>
            Someotherword
        </word>
    </something>
    .
    <something>
        <word>
            Someword
        </word>
    </something>
</text>

我需要提取文本。我从提取这样的单词开始:

    final NodeList nl = dom.getElementsByTagName("word");

... 并遍历给定的列表,以重建文本。问题是“。”。我无法用我的方法重建句子结构。有没有一种优雅的方式来做到这一点?如何访问“.”?

【问题讨论】:

  • 你为什么不把“。”在 之类的标签中,并以与访问其余部分相同的方式访问它..??
  • 我有大约 80k 字的文件。更糟糕的是,有些元信息包含一个点。因此,我不能简单地制作 %s/\./\./g
  • 嗯,你拥有它的方式就像“。”是标签 的文本。您可以使用 getTextTrim() 但这将返回 元素内的所有文本。

标签: java xml document


【解决方案1】:

您可以在 xml 文件中添加新标签:

<fullstop />

您可能想查看此document,但它的可信度如何,我不能说。

而且,重新设计或重新构建文档还为时不晚。避免以后出现此类问题。

【讨论】:

  • 我有大约 80k 字的文件。更糟糕的是,有些元信息包含一个点。因此,我不能简单地制作 %s/\./\./g
  • 你的意思是:%s/\./&lt;anything&gt;\.&lt;\/anything&gt;/g
  • 这是用 替换点的 vim 命令。
猜你喜欢
  • 2011-08-07
  • 1970-01-01
  • 2014-04-22
  • 1970-01-01
  • 1970-01-01
  • 2015-07-28
  • 2014-01-11
  • 1970-01-01
  • 2012-05-15
相关资源
最近更新 更多