标签:style http io sp for 数据 on cti bs
做网站的时候,前台和后台是分开的, 用了CKEDITOR上传图片,但是发现内容带图片的时候,前台Web浏览的时候是一个红X,一看路径不对,上传的到数据库中的是相对的虚拟路径,例如:<img src="/uploadFile/images/Penguins.jpg" style="height:600px; width:800px" />,需要加上图片服务器、或者是后台服务器的域名。
想了各种方法都没用一个好用的,后来想到了替换或者加上一个域名到路径前面,在网上找了一个方法加以修改,最后得到内容中的为:<img src="http://127.0.0.1:81/uploadFile/images/Penguins.jpg" style="height:600px; width:800px" /> 代码如下:
private string changeContent(string content)
{
string str = content;
Regex imgReg = new Regex(@"<img[^>]*(\ssrc=)(‘|"")?([^>""‘\s]*\.(gif|jpg|bmp|jpeg|psd|png|svg|dxf|wmf|tiff|swf))(‘|"")?[\S\s][^>]*>", RegexOptions.IgnoreCase);
MatchCollection matches = imgReg.Matches(content);
foreach (Match m in matches)
{
string newStr, oldStr, tempstr;
oldStr = m.Groups[0].Value;
newStr = m.Groups[3].Value;
tempstr = oldStr.Replace(newStr, "http://127.0.0.1:81" + newStr);
str = str.Replace(oldStr, tempstr);
}
return str;
}
标签:style http io sp for 数据 on cti bs
原文地址:http://www.cnblogs.com/zgz_dpl/p/4117555.html