从C#中的HTML -CDATA模式中提取特定数据

时间:2014-12-31 09:57:04

标签: c# html xml string

从XML Feed解析数据时遇到问题,描述节点包含以下行:

<![CDATA[<div><b>ID:</b> 40</div><div><b>Name:</b> John</div>]]>

我如何解析ID&amp;带有值的名称?

1 个答案:

答案 0 :(得分:0)

你可以使用HtmlAgilityPAck和Regex作为休闲:

 HtmlAgilityPack.HtmlDocument doc = new HtmlAgilityPack.HtmlDocument();
string a = "<![CDATA[<div><b>ID:</b> 40</div><div><b>Name:</b> John</div>]]>";
doc.LoadHtml(Regex.Match(Regex.Match(a, @"\[([^)]*)\]").Groups[1].Value, @"\[([^)]*)\]").Groups[1].Value);
var divs = doc.DocumentNode.SelectNodes("//div");
string ID = divs[0].InnerText.Split(':')[1];
string Name = divs[1].InnerText.Split(':')[1];

这适用于我的数据示例