2013-05-20 34 views
2

我想解析HTML文件並存儲粗體文字(內<b>標籤)。一種解決方案是逐行讀取文件並拆分或使用RegEx。這意味着我應該將整個頁面存儲在String變量中?如果我不把它保存在一個變量中,那麼我不能保證標籤的開始和結束位於同一行。的Java:解析HTML文件,並提取文本

你有什麼建議的解決方案?

+0

[這](HTTP的可能重複://計算器.COM /問題/ 3084148/HTML解析器,在Java的)! –

+1

嘗試使用正則表達式解析HTML通常是一個糟糕的主意,並且只會導致流淚。但是,如果你堅持,是的,如果你需要跨線路匹配,這是一種方法。如果你跟蹤一個狀態,你也可以逐行閱讀。 [爲Java HTML/XML解析器]的 –

+0

可能重複(http://stackoverflow.com/questions/2129375/html-xml-parser-for-java) –

回答

5

使用JSoup解析內容

String html = "<html><head><title>First parse</title></head>" 
    + "<body><p>Parsed HTML into a doc.</p></body></html>"; 

Document doc = Jsoup.parse(html); 
+0

我不想使用外部代碼 – Andrew

+3

你爲什麼不想要使用可靠的第三方庫?這就像說「我想連接到數據庫,但我不想使用jdbc」。 – david99world

+0

我會爭辯說,有理由/不希望有外部依賴的情況,但是......這不是其中之一。 –

0

它是一個項目,我對大學

使用HTMLEditorKit.ParserCallback