HtmlAgilityPack - 子ノードを削除するが、XPathなしでメインノードの内部テキストを保持する

c# html-agility-pack

質問

私はhtmlのように:

<div class="asd"> lalala </br> lalala2 <div> aaaaa </div> </div>

XPathを使わずに "lalala \ n lalala2"だけを取得する必要があります。

受け入れられた回答

HtmlNodeの拡張メソッドを作成することができます

public static class HtmlHelper
{
    public static string InnerText(this HtmlNode node)
    {
        var sb = new StringBuilder();
        foreach (var x in node.ChildNodes)
        {
            if (x.NodeType == HtmlNodeType.Text)
                sb.Append(x.InnerText);

            if (x.NodeType == HtmlNodeType.Element && x.Name == "br")
                sb.AppendLine();
        }

        return sb.ToString();
    }
}

ノードを見つけてnode.InnerText()を呼び出してください



ライセンスを受けた: CC-BY-SA with attribution
所属していない Stack Overflow
このKBは合法ですか? はい、理由を学ぶ
ライセンスを受けた: CC-BY-SA with attribution
所属していない Stack Overflow
このKBは合法ですか? はい、理由を学ぶ