文章里面有个图片路径,我的想法是:读出文章内容的时候,通过正则表达来得到图片路径。
代码: public static string getPic (int cid)
{
StringBuilder strHtml = new StringBuilder();
DataClassesDataContext db = new DataClassesDataContext();
var query = (from item in db.Xk_Content
where item.ColumnId == cid
orderby item.AddDate descending
select item).Take(5);
if (query == null || query.Count() <= 0)
return null;
List<Xk_Content> list = query.ToList<Xk_Content>();
string regstr="";//判断的正则不会请给我个,给了就有分
strHtml.AppendLine(string.Format("<p><a href='{1}/info_{2}.htm'><img src={3}>{0}</a></p>", list[0].Content, list[0].ColumnId, list[0].Id,img.getImgUrl(list[0].Content.ToString(),regstr)));//这里调用IMG命名空间下的getImgUrl()的方法
if (list.Count >= 3)
strHtml.AppendLine(string.Format("<a>{0}</a> | <a>{1}</a>", list[1].Title, list[2].Title));
strHtml.AppendLine("<ul>");
return strHtml.ToString(); }这里就是获取到图片的路径:
public static ArrayList getImgUrl(string html, string regstr)
{ ArrayList resultStr = new ArrayList(); Regex r = new Regex(regstr, RegexOptions.IgnoreCase); MatchCollection mc = r.Matches(html);
foreach (Match m in mc)
{
resultStr.Add(m.Value.ToLower()); } if (resultStr.Count > 0)
{ return resultStr; } else
{ //没有地址的时候返回空字符 resultStr.Add(""); return resultStr; }
}
}
各位帮帮忙,我就只有30分了
代码: public static string getPic (int cid)
{
StringBuilder strHtml = new StringBuilder();
DataClassesDataContext db = new DataClassesDataContext();
var query = (from item in db.Xk_Content
where item.ColumnId == cid
orderby item.AddDate descending
select item).Take(5);
if (query == null || query.Count() <= 0)
return null;
List<Xk_Content> list = query.ToList<Xk_Content>();
string regstr="";//判断的正则不会请给我个,给了就有分
strHtml.AppendLine(string.Format("<p><a href='{1}/info_{2}.htm'><img src={3}>{0}</a></p>", list[0].Content, list[0].ColumnId, list[0].Id,img.getImgUrl(list[0].Content.ToString(),regstr)));//这里调用IMG命名空间下的getImgUrl()的方法
if (list.Count >= 3)
strHtml.AppendLine(string.Format("<a>{0}</a> | <a>{1}</a>", list[1].Title, list[2].Title));
strHtml.AppendLine("<ul>");
return strHtml.ToString(); }这里就是获取到图片的路径:
public static ArrayList getImgUrl(string html, string regstr)
{ ArrayList resultStr = new ArrayList(); Regex r = new Regex(regstr, RegexOptions.IgnoreCase); MatchCollection mc = r.Matches(html);
foreach (Match m in mc)
{
resultStr.Add(m.Value.ToLower()); } if (resultStr.Count > 0)
{ return resultStr; } else
{ //没有地址的时候返回空字符 resultStr.Add(""); return resultStr; }
}
}
各位帮帮忙,我就只有30分了
解决方案 »
- 在GridView中添加模版加个RadioButton控件..如何让它实现单选
- GridView购物车使用js进行产品数量的增加问题
- asp.net中如何实现复制,粘贴按钮
- “DataGrid_ItemCommand”的重载均与委托“System.Web.UI.WebControls.GridViewCommandEventHandler”不匹配
- 子控件获取父控件值
- 大家对“模式驱动重构”的看法
- 如何实现网站在节日、用户注册周年的时候自动向其发送邮件?
- 虚拟目录间的跳转和Session_start事件
- 请问为什么不能在Win2000Server上进行asp.net调试?
- 那一位有邮件系统的源代码(1000分送)
- 一个简单的Silverlight问题
- asp.net 让图片自动适应 image控件的大小
MatchCollection mc = reg.Matches(yourStr);
foreach (Match m in mc)
{
Console.Write(m.Groups["src"].Value + "\n");
}
//只获取第一张
string str = "<li class=\"center\"><a href=\"http://hi.csdn.net/panxunmiao1\" target=\"_blank\" onclick='LogClickCount(this,111);'>"
+ "<img src=\"http://avatar.profile.csdn.net/6/F/2/2_panxunmiao1.jpg\" onmouseover=\"try{showUserCard(this,'panxunmiao1')}catch(ex){};\"/></a></li>"
+ "<img src=\"http://avatar.profile.csdn.net/F/F/C/2_wuyq11.jpg\" onmouseover=\"try{showUserCard(this,'wuyq11')}catch(ex){};\" /></a></li>";
Regex reg = new Regex(@"(?is)<img[^>]*?src=(['""\s]?)(?<path>[^'""\s]+)\1[^>]*?>");
Match match = reg.Match(str);
if (match.Success)
{
Response.Write(match.Value);
}