求一正则表达式,要求得到所有的图片列表

thumb_cn 2007-02-06 03:34:20
一页面包含N多不同网站的图片(jpg|gif|png|jpng|bmp),通过正则得到所有的图片地址列表。
...全文
526 14 打赏 收藏 转发到动态 举报
写回复
用AI写文章
14 条回复
切换为时间正序
请发表友善的回复…
发表回复
mangshuo 2008-11-13
  • 打赏
  • 举报
回复
....
skeljy 2008-11-13
  • 打赏
  • 举报
回复
hao
RyanGT 2008-11-13
  • 打赏
  • 举报
回复
color2002 的不错.
顶一顶
chinaxc 2008-11-13
  • 打赏
  • 举报
回复
接分。
duwl623 2008-11-13
  • 打赏
  • 举报
回复
[algfhfgh广发华福规范化ign=center][/align]
-过客- 2007-04-14
  • 打赏
  • 举报
回复
楼主给的不是太明确,不过如果扩展名固定,那么可以用下面的全部取出,然后过滤一下重复的就行了

string yourStr = richTextBox1.Text;
MatchCollection mc = Regex.Matches(yourStr, @"[^=""'\s]*?\.(jpg|gif|png|jpeg|bmp)", RegexOptions.IgnoreCase);
foreach (Match m in mc)
{
richTextBox2.Text += m.Value + "\n";
}
yxjwang 2007-04-14
  • 打赏
  • 举报
回复
正需要
triangle812 2007-04-14
  • 打赏
  • 举报
回复
study
weizhuangzhi 2007-04-14
  • 打赏
  • 举报
回复
一页面包含N多不同网站的图片(jpg|gif|png|jpng|bmp),通过正则得到所有的图片地址列表。

(jpg|gif|png|jpng|bmp) 你的这个就是正则了

.*\.(jpg|gif|png|jpng|bmp) 这个就是任意字符加上点再加上扩展名。
color2002 2007-04-14
  • 打赏
  • 举报
回复
/// <summary>
/// 返回字符串中所有的图片地址
/// </summary>
/// <param name="str">含图片地址的字符串</param>
/// <returns>返回地址列表ArrayList</returns>
public static ArrayList GetAllImg(string str)
{
ArrayList al = new ArrayList();
MatchCollection mc = Regex.Matches(str, @"[^=""'\s]*?\.(jpg|gif|png|jpeg|bmp)", RegexOptions.IgnoreCase);
foreach (Match m in mc)
{
al.Add(m.Value);
}
return al;

}
/// <summary>
/// 返回字符串中所有的图片地址
/// </summary>
/// <param name="str">含图片地址的字符串</param>
/// <param name="imgType">限定类型 多类型之间用|号隔开 如jpg|gif|png|jpeg|bmp</param>
/// <returns>返回地址列表 ArrayList</returns>
public static ArrayList GetAllImg(string str,string imgType)
{
ArrayList al = new ArrayList();
MatchCollection mc = Regex.Matches(str, @"[^=""'\s]*?\.("+imgType+")", RegexOptions.IgnoreCase);
foreach (Match m in mc)
{
al.Add(m.Value);
}
return al;

}

参考lxcnn(过客) 的,别告我侵权啊 ^_^

另:
xuxiaoyang520yp() 的取出来的有点问题
如果是<img src=***.jpg>的正常 取出=***.jpg
如果是<img src="***.jpg" width="">则不正常 取出来的值为="***.jpg" width=""
xuxiaoyang520yp 2007-02-07
  • 打赏
  • 举报
回复
ArrList arr = new ArrList ();
string sRegex = @"<img\s?src=(?<url>.+)>"
Regex reg = new Regex(sRegex,RegexOptions.IgnoreCase);
MatchCollection mc = reg.Matches(html);
if(mc == null)
{ }
foreach (Match match in mc)
{
arr.Add(match.Groups["url"].Value.ToString());
}
stou 2007-02-07
  • 打赏
  • 举报
回复
\\\w+\.\w{3,4}\W
smlh 2007-02-07
  • 打赏
  • 举报
回复


----------------------------------------------------
企城 中小型企业供应链管理平台 http://www.7ecity.com/
九章落地 2007-02-06
  • 打赏
  • 举报
回复
/// <summary>
/// 取出文本中的图片地址
/// </summary>
/// <param name="HTMLStr">HTMLStr</param>
public static string GetImgUrl(string HTMLStr)
{
string str = string.Empty;
string sPattern = @"^<img\s+[^>]*>";
Regex r = new Regex(@"<img\s+[^>]*\s*src\s*=\s*([']?)(?<url>\S+)'?[^>]*>",
RegexOptions.Compiled);
Match m = r.Match(HTMLStr.ToLower());
if (m.Success)
str = m.Result("${url}");
return str;
}

62,254

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧