asp.net 中使用正则表达式提取IMG标签的SRC地址 .

代码如下:

1、引用命名空间:using System.Text.RegularExpressions;

2、代码如下:

        /// 取得HTML中所有图片的 URL。   
        /// </summary>   
        /// <param name="sHtmlText">HTML代码</param>   
        /// <returns>图片的URL列表</returns>   
        public static string[] GetHtmlImageUrlList(string sHtmlText)
        {
            // 定义正则表达式用来匹配 img 标签   
            Regex regImg = new Regex(@"<img\b[^<>]*?\bsrc[\s\t\r\n]*=[\s\t\r\n]*[""']?[\s\t\r\n]*(?<imgUrl>[^\s\t\r\n""'<>]*)[^<>]*?/?[\s\t\r\n]*>", RegexOptions.IgnoreCase);

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

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

 3、项目中调用:

方法一,调取第一张图片

 string str = dr["Organ_Intro"].ToString();
 string[] imgs = GetHtmlImageUrlList(str);
 dr["Organ_IntroShow"] = imgs[0];

方法二,调取所有图片

 string str = model.Organ_Intro;
 string [] PicArray = GetHtmlImageUrlList(str);

原文地址:https://www.cnblogs.com/Charlene/p/2817714.html