网站制作:保存时自动提取第一张图片地址
发布日期:2017/3/23 16:09:18     浏览量:

网站在添加内容时一般都要求添加图片,传统的方式为手动上传图片。然后在添加内容的时候再添加一次图片。这样同一个图片上传了两次,不仅浪费了网站的空间,而且增加了操作人员的复杂性。

基于20% 的功能可以解决80%的问题原则,我们可以考虑在文章正文中提取第一张图片,考虑到图片有时候可能只是一个很小的占位类型图片,程序要筛选出符合一定大小的图片。这样基本可以解决大部分客户的要求。

 

public  string getfirstimg(string content)

{

string imgurl=string.Empty;

bool flag = false;

String reh = @"<img [^>]*src="/upload/201508/1508181656dd5d4258db59bfae/"([^"">]+)""[^>]+>";

Regex reg = new Regex(reh, RegexOptions.Compiled);

MatchCollection Matchcollage = reg.Matches(content);

foreach (Match matchs in Matchcollage)

{

imgurl = matchs.Result("$1");

if (imgurl.StartsWith("/") || imgurl.StartsWith(site.weburl))

{

imgurl = imgurl.Replace("http://", "");

imgurl = imgurl.Substring(imgurl.IndexOf('/'));

if (DirFile.FileExists(imgurl))

{

FileInfo f = new FileInfo(u.GetMapPath(imgurl));

if (f.Length > 50000) //只提取50K以上的图片可用

{

flag = true;

break;

}

}

}

 

 

 

}

return flag ? imgurl : "";

}