如何更換
標記用
使用HtmlAgilityPack標記?

c# html-agility-pack

很奇怪!當我加載和更換使用空字符串

 var document = new HtmlDocument();
    document.LoadHtml(data); 
    document.DocumentNode.OuterHtml.Replace("<tbody>", "");

這工作正常& <tbody>將被刪除。

當我嘗試更換同樣的方式<br><br/>使用,

document.DocumentNode.OuterHtml.Replace("<br>", "<br/>");

這是行不通的 :(

也嘗試過,

 var brTags = document.DocumentNode.SelectNodes("//br");
            if (brTags != null)
            {
                foreach (HtmlNode brTag in brTags)
                {
                    brTag.OuterHtml = "<br/>";
                    // brTag.Name= "br/"; - > Also this one :(
                }
            }

HTMLAgilityPack的replace()函數不適用於自閉標籤?

一般承認的答案

document.OptionWriteEmptyNodes = true;

會為你做的伎倆!


熱門答案

您不必更換<br>通過<br/>手動,如果你需要關閉節點,只是指示庫這樣做,比如這個:

HtmlDocument doc = new HtmlDocument();
doc.LoadHtml("<br/>");
doc.Save(Console.Out);

將輸出:

<br>

和這個

HtmlDocument doc = new HtmlDocument();
doc.LoadHtml("<br/>");
doc.OptionWriteEmptyNodes = true;
doc.Save(Console.Out);

將輸出:

<br />


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