C#得到html代码中所有图片地址

做采集等项目时,需要对html代码进行分析,其中一个需求就是对html进行分析,得到所有的图片地址,再想办法直接上传到自己的服务器,下面是得到所有图片地址的函数。

///    
/// 取得HTML代码中所有图片的 URL。   
///    
/// HTML代码   
/// 图片的URL列表,返回null时出错   
public string[] GetHtmlImageUrls(string ResourseHtmlStrings)
{
    try
    {
        // 定义正则表达式用来匹配 img 标签   
        Regex regImg = new Regex(@"<img\b[^<>]*?\bsrc[\s\t\r\n]*=[\s\t\r\n]*[""']?[\s\t\r\n]*(?[^\s\t\r\n""'<>]*)[^<>]*?/?[\s\t\r\n]*>", RegexOptions.IgnoreCase);

        // 搜索匹配的字符串   
        MatchCollection matches = regImg.Matches(ResourseHtmlStrings.ToLower());
        int i = 0;
        string[] imgURLs = new string[matches.Count];

        // 取得匹配项列表   
        foreach (Match match in matches)
            imgURLs[i++] = match.Groups["imgUrl"].Value;
        return imgURLs;
    }
    catch (Exception ErrMsg)
    {
        return null;
    }
}

得到的结果是图片地址数组