0

タグ自体を含め、2 つの div タグの間のすべてのテキストを削除する最良の方法を探しています。

例えば:

<body>
<div id="spacer"> This is a title </div>
</body>

になります:

<body>
</body>

編集:これはサーバー側で発生する必要があります(C#)

4

3 に答える 3

1

このライブラリを使用できます: http://htmlagilitypack.codeplex.com/サーバー側で操作するには、以下に例を示します。

var doc = new HtmlDocument();
doc.LoadHtml("<body><div id=\"spacer\"> This is a title </div></body>");
doc.GetElementbyId("spacer").Remove();

var stream = new StringWriter();
doc.Save(stream);

var result = stream.ToString();

編集:

xpath を使用して、必要なノードを選択することもできます。

var nodes = doc.DocumentNode.SelectNodes("body/div");
nodes.ToList().ForEach(node => node.Remove());
于 2013-01-30T03:46:51.717 に答える
0

正規表現を使用して、html タグとテキストを削除できます。Google でいくつかの例を見つけることができます。

于 2013-01-30T13:12:33.267 に答える
0

何を達成しようとしているのかはわかりませんが、サーバー側のコントロールを参照していないため、その場で詳細を非表示または削除する最良の方法は JQuery/Javascript です。

文字列を解析するだけの場合:-

1)最初の出現/最後の出現を解析して見つけ、その間のものをトリミングします。

2) XML 解析は別の方法であり、より良い方法で操作するために xml 全体を反復処理できるため、より良い方法であると思います。

于 2013-01-30T03:54:48.363 に答える