在C#中处理HTML标记

时间:2014-01-29 09:50:54

标签: c# html string-parsing

我想处理/操作一些HTML标记

e.g。

<a id="flFileList_gvDoItFiles_btnContent_1" href="javascript:__doPostBack('flFileList$gvDoItFiles$ctl03$btnContent','')">Untitled.png.3154ROGG635264188946573079.png</a>

更改为

<a id="flFileList_gvDoItFiles_btnContent_1" href="javascript:__doPostBack('flFileList$gvDoItFiles$ctl03$btnContent','')">Untitled.png</a>

我想用C#字符串处理来实现这个目的。

对此没有任何想法。 我有逻辑写转换

Untitled.png.3154ROGG635264188946573079.png

Untitled.png

我如何识别和替换标记中的字符串?

String.Split()??

1 个答案:

答案 0 :(得分:2)

我建议您使用HtmlAgilityPack来解析HTML。您可以通过它的id轻松获取a元素,然后替换它的内部文本:

HtmlDocument doc = new HtmlDocument();
doc.LoadHtml(html_string);
string xpath = "//a[@id='flFileList_gvDoItFiles_btnContent_1']";
var a = doc.DocumentNode.SelectSingleNode(xpath);
a.InnerHtml = ConvertValue(a.InnerHtml); // call your logic for converting value
string result = a.OuterHtml;