2011-04-12 74 views
1

我有我需要清理的XHTML節點的多個序貫OCCURENCES,具有以下的innerText:的XPath - 找到一個元素

<img style="width: 402px; height: 312px;" src="http://www.mydomain.com/test.jpg" align="left" border="0" height="312" hspace="5" vspace="5" width="402"> <br><font size="1" face="Arial"><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><font face="Verdana">Image text goes here</font> </font>

我不能用自己搞清楚XPath表達式返回/找到多個出現的元素<br>。我需要在節點中進行遞歸併檢查最後一場比賽嗎?

更新:我使用HtmlAgilityPack瀏覽文檔。

提前致謝!

問候, byte_slave

+0

你想要將代碼轉換爲什麼? – andyb 2011-04-12 10:28:49

回答

2

不是真的確定要這個做什麼。我已經問過你想把它轉換成對問題的評論......

猜測你可能想要做的事情,儘管&hellip;

要找出<br/>元素的總數,你只需使用XPath count(//descendant-or-self::br)

或者,如果你想要做的事與所有<br/>元素旁邊,是另一個<br/>您可以使用XPath //descendant-or-self::br[following-sibling::br or preceding-sibling::br]剛剛返回長列表<br/> s

+0

太棒了!這是我需要的!感謝andyb – 2011-04-12 11:18:44

1

XPath是行不通的,因爲這是 XHTML。所有br標籤都未封閉。哎呀,即使是img標籤本身也是不完整的...

你需要用純文本處理(可能是正則表達式)或HTML清理器清理它。看看

xmllint

HTML tidy

+0

即時通訊使用HtmlAgilityPack,sorru忘記包含在問題中。它現在更新。與我可以成功地使用Xpath,我只是不知道表達式來實現我想要的。 – 2011-04-12 10:40:33

+0

好的,祝你好運:)我不知道HtmlAgilityPack – sehe 2011-04-12 10:43:09