您好我正在尝试如何使用正则表达式使用HTMLAgilityPack Vs(不确定哪个更贵)。我的问题ID与HTMLAgilityPack我能够提取所需的属性,并用一个新的替换它;但是,我似乎无法更新原始文本。这是代码;
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+"]";
}
现在我想让它反映在原来的“输入”变量中。知道怎么办吗?
由于
答案 0 :(得分:1)
我也正在尝试如何使用Agility Pack。试试:
String HTML = nodes.DocumentNode.WriteTo();
您需要在原始文本中写下更新。
答案 1 :(得分:0)
您错过了doc.Save(yourFileName);