string p=@"<img[^>]+src=""([^"">]+)""[^>]+>";
string fckStr=@"<p>asf<img width=""640"" height=""480"" alt="""" src=""/news/Uploads/20090810_212912_936_911.jpg"" /></p>";
MatchCollection results = Regex.Matches(fckStr, @"<img[^>]+src=""([^"">]+)""[^>]+>", RegexOptions.IgnoreCase); foreach (Match m in results)
{ Response.Write(m.Groups["src"].Value + "<br/>"); }
return;小弟想拿到的是FCK产生的代码中完整的图片路径<p>asf<img width="640" height="480" alt="" src="/news/Uploads/20090810_212912_936_911.jpg" /></p>中的:
<img width="640" height="480" alt="" src="/news/Uploads/20090810_212912_936_911.jpg" />
下面这个正则:@"/<img([^\/>]+)src=""([^""]+)""([^\/>]+)\/>/is"在PHP中工作的很好,拿来就不好用了,不知道咋搞?小弟做了个新闻系统,推荐到首页的新闻要截取一部分新闻的内容作为导读,如果内容的前半部分就是一张图片就截取出来了一张图片,无法做导读用,得先获取到图片内容,然后去掉它再截取一定数量的字符作为导读。
或者有什么办法把所有的图片都给替换掉再截取,各位大哥还有什么好办法啊?
string fckStr=@"<p>asf<img width=""640"" height=""480"" alt="""" src=""/news/Uploads/20090810_212912_936_911.jpg"" /></p>";
MatchCollection results = Regex.Matches(fckStr, @"<img[^>]+src=""([^"">]+)""[^>]+>", RegexOptions.IgnoreCase); foreach (Match m in results)
{ Response.Write(m.Groups["src"].Value + "<br/>"); }
return;小弟想拿到的是FCK产生的代码中完整的图片路径<p>asf<img width="640" height="480" alt="" src="/news/Uploads/20090810_212912_936_911.jpg" /></p>中的:
<img width="640" height="480" alt="" src="/news/Uploads/20090810_212912_936_911.jpg" />
下面这个正则:@"/<img([^\/>]+)src=""([^""]+)""([^\/>]+)\/>/is"在PHP中工作的很好,拿来就不好用了,不知道咋搞?小弟做了个新闻系统,推荐到首页的新闻要截取一部分新闻的内容作为导读,如果内容的前半部分就是一张图片就截取出来了一张图片,无法做导读用,得先获取到图片内容,然后去掉它再截取一定数量的字符作为导读。
或者有什么办法把所有的图片都给替换掉再截取,各位大哥还有什么好办法啊?
<img[\s\S]+?\/>
MatchCollection results = Regex.Matches(fckStr, @"(?i)<img[^>]*>");
public static IList<string> GetPicPath(string M_Content)
{
IList<string> im = new List<string>();//定义一个泛型字符类
Regex reg = new Regex(@"<img.*?src=""(?<src>[^""]*)""[^>]*>", RegexOptions.IgnoreCase);
MatchCollection mc = reg.Matches(M_Content); //设定要查找的字符串
foreach(Match m in mc)
{
im.Add(m.Groups["src"].Value);
}
return im;
}