簡體   English   中英

使用同一xml標記中的text和xml標記解析xml

[英]Parse xml with text and xml tags in same xml tag

我不會用看起來像這樣的java解析xml:

<sentence>This is a <a><b>long</b></a> sentence.</sentence>
<sentence>This is a second <a><b>even</b></a> longer sentence.</sentence>

結果,我需要沒有xml的整個句子。 我試圖用dom4j解析它。 調用函數element.getText()(當前元素是句子標簽),我只是得到了在嵌套xml標簽中沒有文本的句子。

謝謝你的幫助! 問候

將數據保留在xml標記的[CDATA]部分中

<sentence><![CDATA[This is a <a><b>long</b></a> sentence.]]></sentence>

您可以使用XPath選擇所有文本節點

String getAllTextContent(Node node) {
  List<Node> nodes = node.selectNodes("descendant-or-self::text()");
  StringBuilder buf = new StringBuilder();
  for ( Node n : nodes ) {
    buf.append(n.getText());
  }
  return buf.toString();
}
// usage
System.out.println(getAllTextContent(doc.selectSingleNode("//sentence")));

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM