0

こんにちは、HTMLAgilityPack と Regex を使用する方法を実験しています (どちらがより高価かはわかりません)。HTMLAgilityPack を使用した私の質問 ID 必要な属性を抽出して新しい属性に置き換えることができます。ただし、元のテキストを更新できないようです。コードは次のとおりです。

string input = @"<area shape=""rect"" coords=""0,0,82,126"" href=""one"" alt=""Sun""> <area shape=""rect"" coords=""0,0,82,126"" href=""two"" alt=""Sun"" > <area shape=""rect"" coords=""0,0,82,126"" href=""Three"" alt=""Sun"" >";

HtmlDocument document = new HtmlDocument();
document.LoadHtml(input);

HtmlNodeCollection nodes = document.DocumentNode.SelectNodes("//area");

for (int i = 0; i < nodes.Count; i++ )
{
    HtmlNode node = nodes[i];
    var href = node.Attributes["href"].Value;
    //Reassigning href value
    node.Attributes["href"].Value="Re-Assign ["+i+"]";
}

これを元の「入力」変数に反映させたいと思います。続行する方法はありますか?

ありがとう

4

2 に答える 2

2

また、敏捷性パックの使用方法も試しています。試してみてください:

String HTML = nodes.DocumentNode.WriteTo();

元のテキストで更新を書き込む必要があります。

于 2012-10-16T21:37:29.040 に答える
0

あなたが行方不明だったdoc.Save(yourFileName);

于 2012-10-30T14:43:24.587 に答える