使用HtmlAgilityPack來解析HTML變量,而不是HTML文檔?

c# html-agility-pack

我的程序中有一個變量,它包含HTML數據作為字符串。變量htmlText包含以下內容:

<ul><li><u>Mode selector </u></li><li><u>LAND ALT</u></li>

我想使用HtmlAgilityPack迭代這個HTML,但我看到的每個例子都試圖將HTML作為文檔加載。我已經在變量htmlText解析了我要解析的HTML。有人可以告訴我如何解析這個,而不將其作為文檔加載?

我現在看的例子看起來像這樣:

static void Main(string[] args)
{
    var web = new HtmlWeb();
    var doc = web.Load("http://www.stackoverflow.com");

    var nodes = doc.DocumentNode.SelectNodes("//a[@href]");

    foreach (var node in nodes)
    {
            Console.WriteLine(node.InnerHtml);
    }
}

我想將其轉換為使用我的htmlText並查找其中的所有underline元素。我只是不想將其作為文檔加載,因為我已經將我要解析的HTML存儲在變量中。

一般承認的答案

您可以使用HtmlDocument類的LoadHtml方法


熱門答案

文檔只是一個名稱,它不是真正的文檔(或不必是)。

var doc = New HtmlAgilityPack.HtmlDocument;
string myHTML = "<ul><li><u>Mode selector </u></li><li><u>LAND ALT</u></li>";
doc.LoadHtml(myHTML);
foreach (var node in doc.DocumentNode.SelectNodes("//a[@href]")) {
    Console.WriteLine(node.InnerHtml);

}

我用這個完全相同的東西來解析變量中的html塊。




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