2015-03-25 32 views
2

如何獲得不屬於任何元素的文本?如何使用jsoup獲取不屬於任何元素的文本?

<br><b>Price:</b> &nbsp; Rs. 24,900.00 &nbsp; <br> 

在這裏,如何獲取文本Rs.24,900.00。這可能使用jsoup?

+0

[Convert xPath to JSoup query]的可能重複(http://stackoverflow.com/questions/16335820/convert-xpath-to-jsoup-query) – 2015-03-25 08:50:18

+0

@ScaryWombat我認爲這個問題是不同的,因爲我根本沒有處理xpath。 – Nikhil 2015-03-25 08:54:57

回答

1

我想有一個父元素,所以你應該選擇第一個,然後只需選擇「b」就像下面的代碼。基本上只需在文本前面找到元素。

Document doc = Jsoup.parse("<br><b>Price:</b> &nbsp; Rs. 24,900.00 &nbsp; <br>"); 
Element el = doc.select("b").first(); 
String text = ((TextNode) el.nextSibling()).text(); 

我首先使用,因爲我從你的例子知道只有一個「b」元素。如果您有多個價格,則必須遍歷所有元素而不是先使用。

Jsoup將文本存儲爲節點。因此,nextSibling將返回一個節點(TextNode),後面跟着「b」元素,幷包含文本值:「  Rs.24900.00  」

+0

糟糕!我收到一個錯誤:TextNode無法解析爲類型。 – Nikhil 2015-03-25 08:57:26

+0

import org.jsoup.nodes。*; – user1121883 2015-03-25 08:58:16

+0

謝謝!有效。但爲什麼我們需要第一個()? nextSibling意味着什麼? – Nikhil 2015-03-25 09:05:23

相關問題