2011-04-25 71 views
4

我使用的HTML敏捷性包有很大的影響,而且我真的與它留下深刻的印象 - 不過,我選擇像這樣HTML敏捷包使用大寫和小寫標籤解析?

doc.DocumentNode.SelectSingleNode("//body").InnerHtml 

我如何應對以下情況的內容,用不同的文件呢?

<body> 
<Body> 
<BODY> 

上面的代碼只能得到小寫的版本嗎?

+1

你有什麼嘗試?看起來像是可以在幾分鐘內測試的東西。 – Oded 2011-04-25 07:47:32

回答

16

Html敏捷包以不區分大小寫的方式處理HTML。這意味着它會解析身體,身體和身體的方式相同。它的設計原因是HTML不區分大小寫(XHTML是)。

這就是說,當你使用它的XPATH功能時,你的必須使用來使用寫成小寫的標籤。這意味着"//body"表達式將匹配BODY,Body和body,「// BODY」不會匹配任何內容。

+0

好奇。想知道他們爲什麼這麼做? – mpen 2011-04-25 15:18:24

+0

@Mark - 我其實是作者:-)我這樣做是因爲XPATH區分大小寫(而且翻譯功能太不實用了!),而HTML不是。我沒有看到任何其他好的解決方案? – 2011-04-25 16:04:10

+0

我不知道...如果文檔是HTML,只是小寫的一切嗎?但是,如果它是XHTML或XML,請留下它?這不是什麼大不了的事情,只是要注意我猜的:) – mpen 2011-04-25 23:59:52