关闭

查找文本中IMG标签 替换SRC属性值

602人阅读 评论(1) 收藏 举报
private static string Contentformat(string strText)
    {
        //处理后的结果。
        StringBuilder sbNewText = new StringBuilder();


        //找到所有图片,替换Src
        //Regex regImg = new Regex(@"<(img|embed|bgsound|object)[^<>]*>", RegexOptions.IgnoreCase);
        //MatchCollection matchs = regImg.Matches(strText);
        strText = strText.Replace("<", "<");
        strText = strText.Replace(">", ">");
        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 matchs = regImg.Matches(strText);
        if (matchs.Count == 0)
        {
            return strText;
        }
        else
        {
            int curPos = 0;
            foreach (Match m in matchs)
            {
                sbNewText.Append(strText.Substring(curPos, m.Index - curPos));
                curPos = m.Index + m.Length;
                string imgTag = m.Value;
                string url = System.Web.HttpContext.Current.Server.MapPath("~/FileSystem/41/") + m.Groups["imgUrl"].Value;
                string base64Img = Convert.ToBase64String(System.IO.File.ReadAllBytes(url));
                string img = "<Img src='data:image/png;base64," + base64Img + "' />";
                //string img = "<Img src='" + url + "' />";
                sbNewText.Append("<br />");
                sbNewText.Append(img);
            }
        }
        return sbNewText.ToString();
    }

1
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:14664次
    • 积分:463
    • 等级:
    • 排名:千里之外
    • 原创:27篇
    • 转载:22篇
    • 译文:0篇
    • 评论:2条