0

我正在玩 C# 中的网站和正则表达式。我有这种情况:

             <a href="path/to/image">
    <img src="thumbnail"></a>

该大纲是我的应用程序如何获取给定网站的内容。每行的制表符和特征线都不相同。

我使用 gskinner 检查正则表达式 (http://gskinner.com/RegExr/),并创建了这个正则表达式:

            (?i)<a([^>]+)>\W.*</a>

标志:多行

Gskinner 表明该模式是正确的。但是当我输入 c# (regEx.Matches(...)) 时,它再也找不到匹配项了。

有谁知道如何做到这一点?

谢谢

4

1 回答 1

0

使用HtmlAgilityPack和您的示例字符串

HtmlAgilityPack.HtmlDocument doc = new HtmlAgilityPack.HtmlDocument();
doc.LoadHtml(html);

-

var href = doc.DocumentNode
    .Descendants("a")
    .Select(n => n.Attributes["href"].Value)
    .FirstOrDefault();

var src = doc.DocumentNode
    .Descendants("img")
    .Select(n => n.Attributes["src"].Value)
    .FirstOrDefault();
于 2012-05-16T21:15:38.567 回答