C# 解析字符串/innerhtml 以获取特定数据

Posted

技术标签:

【中文标题】C# 解析字符串/innerhtml 以获取特定数据【英文标题】:C# parsing string/innerhtml to get specific data 【发布时间】:2018-11-03 01:19:01 【问题描述】:

好的,我正在尝试从innerhtml 内的img src 标签中提取特定数据,

获取innerhtml的代码示例:

var list = driver.FindElement(By.Id("list"));
var innerHtml = list.GetAttribute("innerHTML");

Console.Write(innerHtml);

然后输出

<list class="bla">
    <img src="http://www.example.com?id=1&number=1">
    <img src="http://www.example.com?id=12&number=11">
    <img src="http://www.example.com?id=13&number=111">
    <img src="http://www.example.com?id=11&number=11">
    <img src="http://www.example.com?id=21&number=12">
</list>

但我要输出的是id值&数字值,

1,1
12,11
13,111
11,11
21,12

如何正确获取价值

id=

&

number=

【问题讨论】:

使用 Html 敏捷包 html-agility-pack.net 【参考方案1】:

您可以使用RegularExpression 来获得想要的结果:

foreach (Match m in Regex.Matches(innerHtml, @"id=(?<id>\d+)&number=(?<number>\d+)"))

    Console.WriteLine(m.Groups["id"] + "," + m.Groups["number"]);

【讨论】:

以上是关于C# 解析字符串/innerhtml 以获取特定数据的主要内容,如果未能解决你的问题,请参考以下文章

解析 XML,获取特定名称的深层元素。 (C#)

C# 使用 HttpClient 从 JSON 响应中获取特定对象

获取 HTMLTable C# 的 InnerHtml

C# HTML解析工具HtmlAgilityPack使用实例

在javascript中设置innerHTML并从C#中获取

在 C# 中根据样式获取 HTML 元素