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

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
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值