我可以使用Html Agility Pack嗎?

.net c# html-agility-pack

我在他們的網站上找不到任何教程。我想知道我可以使用Html Agility Pack並使用它來解析字符串嗎?

就像我說的那樣

string = "<b>Some code </b>

我可以使用敏捷包來擺脫<b>標籤嗎?到目前為止我看到的所有示例都像html文檔一樣加載。

一般承認的答案

如果它是HTML,那麼是的。

string str = "<b>Some code</b>";
// not sure if needed
string html = string.Format("<html><head></head><body>{0}</body></html>", str);
HtmlDocument doc = new HtmlDocument();
doc.LoadHtml(html);

// look xpath tutorials for how to select elements
// select 1st <b> element
HtmlNode bNode = doc.DocumentNode.SelectSingleNode("b[1]");
string boldText = bNode.InnerText;

熱門答案

我認為這不是HtmlAgilityPack的最佳用法。

通常情況下,我看到有人試圖使用正則表達式解析大量的html,我將它們指向HtmlAgilityPack,但在這種情況下,我認為使用正則表達式會更好。

Roy Osherove有一篇博文,描述瞭如何從片段中刪除所有html:

即使你確實使用Mika Kolari的樣本獲得了正確的xpath,這只適用於帶有<b>標記的片段,如果代碼發生變化則會破壞。




許可下: CC-BY-SA with attribution
不隸屬於 Stack Overflow
這個KB合法嗎? 是的,了解原因
許可下: CC-BY-SA with attribution
不隸屬於 Stack Overflow
這個KB合法嗎? 是的,了解原因