<span>タグを</span>削除し<span>ますが、テキストは保持しますか?</span>

c# html-agility-pack

質問

私はHTMLコードを含む文字列を解析するためにHtmlAgilityPackを使用しています。私がしようとしているのは、 <span>タグを削除することですが、タグ間でコンテンツを保持します。これまでのところ私のコードです:

var text = @"<div><span>This is some text.</span>More text here.</div>
<div>I have a question.<span>Hi</span></div>";
var doc = new HtmlDocument();
doc.LoadHtml(text);
var nodes = doc.DocumentNode.SelectNodes("//span");
foreach (HtmlNode node in nodes)
{
   node.Remove();
}
String result = doc.DocumentNode.InnerHtml;

問題は、 result 「これはテキストです。」がないことです。 - <span>タグ間のテキスト。私は何をしようとしているのですか?私がいることを実感node.Remove私はちょうど私が言うことができる方法があることを期待していた、実際にノード全体を削除しremove.Node 、しかし、コンテンツを保持するには。

受け入れられた回答

孫を残しながらそのノードを親から削除する。

foreach (var node in nodes)
{
    node.ParentNode.RemoveChild(node,true);
}



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