`
shirlly
  • 浏览: 1657218 次
  • 性别: Icon_minigender_2
  • 来自: 福州
社区版块
存档分类
最新评论

获取FCK中插入的图片的地址

    博客分类:
  • .NET
阅读更多
#region 获取FCK中所有图片路径,并保存到FCKIMG表中 
        public void SaveFckImg(int TitleID,string Content)
        {
            string[] strUrl = GetHtmlImageUrlList(Content);
            for (int k = 0; k < strUrl.Length; k++)
            {
                string url = strUrl[k];
                FckImgManage fckImg = new FckImgManage();
                bool result = fckImg.SelectRepeat(TitleID,url); //查重
                if (Equals(result, false))
                {
                    fckImg.FckImgAdd(TitleID, url);
                }
            }
        }
        #endregion

#region 取得FCK内容中所有图片的 URL 
        /// <summary>
        /// 取得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;
        }
        #endregion
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics