是否.NET框架提供的方法来解析HTML字符串? [英] Does .NET framework offer methods to parse an HTML string?
本文介绍了是否.NET框架提供的方法来解析HTML字符串?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
因为知道我不能使用HTMLAgilityPack,只有直.NET,说我有一个包含一些HTML,我需要解析和字符串编辑在这种方式:
Knowing that I can't use HTMLAgilityPack, only straight .NET, say I have a string that contains some HTML that I need to parse and edit in such ways:
- 将标识或标签找到层次结构中的具体控制
- 修改(理想情况下创建)那些被发现的元素属性
有没有方法在.NET提供这样做?
Are there methods available in .net to do so?
推荐答案
您可以创建一个虚拟的HTML文档。
You can create a dummy html document.
WebBrowser w = new WebBrowser();
w.Navigate(String.Empty);
HtmlDocument doc = w.Document;
doc.Write("<html><head></head><body><img id=\"myImage\" src=\"c:\"/><a id=\"myLink\" href=\"myUrl\"/></body></html>");
Console.WriteLine(doc.Body.Children.Count);
Console.WriteLine(doc.GetElementById("myImage").GetAttribute("src"));
Console.WriteLine(doc.GetElementById("myLink").GetAttribute("href"));
Console.ReadKey();
输出:
2
文件:/// C:
有关:myUrl
编辑元素:
HtmlElement imageElement = doc.GetElementById("myImage");
string newSource = "d:";
imageElement.OuterHtml = imageElement.OuterHtml.Replace(
"src=\"c:\"",
"src=\"" + newSource + "\"");
Console.WriteLine(doc.GetElementById("myImage").GetAttribute("src"));
输出:
文件:/// D:
这篇关于是否.NET框架提供的方法来解析HTML字符串?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文