JSoup- 按原样获取标签之间的文本
JSoup- Getting text between tags as is
场景: 我使用 Apache Tika
从 DOCX
文件中获取 XHTML
。我需要解析此 XHTML
以获取特定标签(例如 div 或 p 标签)之间的文本。为此,我使用 Jsoup
来获取标签之间的文本。
问题: 原来 XHTML
有这样的文字:
some text [tab-space][tab-space] other text.
但是 Jsoup
我得到这个:
some text other text.
所以标签空间丢失了,但我需要按原样获取文本,即包括 tag-spaces
。是否可以使用 Jsoup
或是否有任何其他 Java
库来做到这一点?
对 TextNode 使用 getWholeText 方法:https://jsoup.org/apidocs/org/jsoup/nodes/TextNode.html#getWholeText--
final Document doc = Jsoup.parse(new File(".\source.xhtml"), "UTF-8");
for (Element result : doc.select("div")) {
final String text = ((TextNode) result.childNode(0)).getWholeText();
System.out.println(text);
}
场景: 我使用 Apache Tika
从 DOCX
文件中获取 XHTML
。我需要解析此 XHTML
以获取特定标签(例如 div 或 p 标签)之间的文本。为此,我使用 Jsoup
来获取标签之间的文本。
问题: 原来 XHTML
有这样的文字:
some text [tab-space][tab-space] other text.
但是 Jsoup
我得到这个:
some text other text.
所以标签空间丢失了,但我需要按原样获取文本,即包括 tag-spaces
。是否可以使用 Jsoup
或是否有任何其他 Java
库来做到这一点?
对 TextNode 使用 getWholeText 方法:https://jsoup.org/apidocs/org/jsoup/nodes/TextNode.html#getWholeText--
final Document doc = Jsoup.parse(new File(".\source.xhtml"), "UTF-8");
for (Element result : doc.select("div")) {
final String text = ((TextNode) result.childNode(0)).getWholeText();
System.out.println(text);
}