因为正则不是很熟,特请大侠们看下这个正则应该怎么写!
<img src="http://www.inluxe.cn/assets/shared/images/grey0.gif" original="/uploads/news/2012/03/salvatore-ferragamo-02_1.jpg">
<div class="box page_details">
<h4>最新新闻 Latest News</h4>
<div class="mainleft ">
<h1>菲拉格慕 Salvatore Ferragamo 盛大举行 Signorina 香氛发布会</h1>
<p style="margin-top:-20px; margin-bottom:20px;">发布日期:2012/3/25</p>
<div class="details h20 lazyload">
<p>
<p>当地时间3月20日,菲拉格慕(Salvatore Ferragamo)为新款香氛Signorina在纽约举行盛大发布会。当晚发布会现场星光璀璨,众星云集,包括Emma Roberts、Annasophia Robb、Courtney Love、Kate Mara、Bianca Balti、the Brant Brothers等在内的明星均盛装亮相助阵。</p>
<p>
<img alt="Salvatore Ferragamo 02 1" src="http://www.inluxe.cn/assets/shared/images/grey.gif" original="/uploads/news/2012/03/salvatore-ferragamo-02_1.jpg">
</p>
</div>
<img src="http://www.inluxe.cn/assets/shared/images/grey2.gif" original="/uploads/news/2012/03/salvatore-ferragamo-02_1.jpg">是这样的,因为里面文章一共有三个图片地址,我自己有写这个正则:<[img|IMG].*?src=[\'|\"](.*?(?:[\.gif|\.jpg]))[\'|\"].*?[\/]?>,但是这个是获取当前页所有的图片地址,也即是说上面一共有三个图片地址,他都获取到了,但是我的要求仅仅是获取上面内容<div class="box page_details">标签里面的图片:也就是仅仅只获取“<img alt="Salvatore Ferragamo 02 1" src="http://www.inluxe.cn/assets/shared/images/grey.gif" original="/uploads/news/2012/03/salvatore-ferragamo-02_1.jpg">”这个图片的地址,希望大侠们帮帮忙,给点意见。
<img src="http://www.inluxe.cn/assets/shared/images/grey0.gif" original="/uploads/news/2012/03/salvatore-ferragamo-02_1.jpg">
<div class="box page_details">
<h4>最新新闻 Latest News</h4>
<div class="mainleft ">
<h1>菲拉格慕 Salvatore Ferragamo 盛大举行 Signorina 香氛发布会</h1>
<p style="margin-top:-20px; margin-bottom:20px;">发布日期:2012/3/25</p>
<div class="details h20 lazyload">
<p>
<p>当地时间3月20日,菲拉格慕(Salvatore Ferragamo)为新款香氛Signorina在纽约举行盛大发布会。当晚发布会现场星光璀璨,众星云集,包括Emma Roberts、Annasophia Robb、Courtney Love、Kate Mara、Bianca Balti、the Brant Brothers等在内的明星均盛装亮相助阵。</p>
<p>
<img alt="Salvatore Ferragamo 02 1" src="http://www.inluxe.cn/assets/shared/images/grey.gif" original="/uploads/news/2012/03/salvatore-ferragamo-02_1.jpg">
</p>
</div>
<img src="http://www.inluxe.cn/assets/shared/images/grey2.gif" original="/uploads/news/2012/03/salvatore-ferragamo-02_1.jpg">是这样的,因为里面文章一共有三个图片地址,我自己有写这个正则:<[img|IMG].*?src=[\'|\"](.*?(?:[\.gif|\.jpg]))[\'|\"].*?[\/]?>,但是这个是获取当前页所有的图片地址,也即是说上面一共有三个图片地址,他都获取到了,但是我的要求仅仅是获取上面内容<div class="box page_details">标签里面的图片:也就是仅仅只获取“<img alt="Salvatore Ferragamo 02 1" src="http://www.inluxe.cn/assets/shared/images/grey.gif" original="/uploads/news/2012/03/salvatore-ferragamo-02_1.jpg">”这个图片的地址,希望大侠们帮帮忙,给点意见。
解决方案 »
- 如何给OpenModalDialog附值
- asp.net +MSSQL 执行存储过程返回DataTable 数据填充问题
- 如何在js中触发asp.net的那些validator?谁知道怎么写脚本吗?
- 广州生存安全攻略(完全版) 值得一看(哈哈)
- 大家用vs2005编写asp.net程序,用的是win2003还是win2000?那个更好?
- 如何知道我安装asp.net没有呢?新手问
- 关于ListBox选项Items双击问题
- 去掉空格问题?
- 大侠们帮忙
- 当sql表中增加一个字段后(没给默认值),怎么才能不让程序出错
- AJAX Control Toolkit TabContainer和Combobox联用的问题
- 关于 MVC3 / Spring.Net / NHibernate 如何选择?
string str = re.Match("你要提取的字符串").Value;//结果:http://www.inluxe.cn/assets/shared/images/grey.gif
{
string str = @"<img src=""http://www.inluxe.cn/assets/shared/images/grey0.gif"" original=""/uploads/news/2012/03/salvatore-ferragamo-02_1.jpg"">
<div class=""box page_details"">
<h4>最新新闻 Latest News</h4>
<div class=""mainleft "">
<h1>菲拉格慕 Salvatore Ferragamo 盛大举行 Signorina 香氛发布会</h1>
<p style=""margin-top:-20px; margin-bottom:20px;"">发布日期:2012/3/25</p>
<div class=""details h20 lazyload"">
<p>
<p>当地时间3月20日,菲拉格慕(Salvatore Ferragamo)为新款香氛Signorina在纽约举行盛大发布会。当晚发布会现场星光璀璨,众星云集,包括Emma Roberts、Annasophia Robb、Courtney Love、Kate Mara、Bianca Balti、the Brant Brothers等在内的明星均盛装亮相助阵。</p>
<p>
<img alt=""Salvatore Ferragamo 02 1"" src=""http://www.inluxe.cn/assets/shared/images/grey.gif"" original=""/uploads/news/2012/03/salvatore-ferragamo-02_1.jpg"">
</p>
</div>
<img src=""http://www.inluxe.cn/assets/shared/images/grey2.gif"" original=""/uploads/news/2012/03/salvatore-ferragamo-02_1.jpg"">
"; Regex re = new Regex(@"(?is)<div\s*class=""box page_details"">.*?(<img\s*alt=""[^""]+""\s*src=""([^""]+)""\s*original=""([^""]+)"">).*?</div>", RegexOptions.IgnoreCase);
Match ma = re.Match(str); Console.WriteLine(ma.Groups[1].Value);
//Groups1结果:<img alt="Salvatore Ferragamo 02 1" src="http://www.inluxe.cn/assets/shared/images/grey.gif" original="/uploads/news/2012/03/salvatore-ferragamo-02_1.jpg">
Console.WriteLine(ma.Groups[2].Value);
//Group2结果:http://www.inluxe.cn/assets/shared/images/grey.gif
Console.WriteLine(ma.Groups[3].Value);
//group3结果:/uploads/news/2012/03/salvatore-ferragamo-02_1.jpg
Console.WriteLine();
Console.ReadLine();
}
string patern = "(?is)<div\\s*class=\"box page_details\"\\s*>(.*)?(?<img><[img|IMG].*?src=[\'|\"](.*?(?:[.gif|.jpg]))[\'|\"].*?[/]?>)(.*)?</div>";
string tempStr = File.ReadAllText(@"C:\3.txt", Encoding.GetEncoding("GB2312"));//tempStr 就是你的字符串
Regex re = new Regex(patern);
List<string> lists = new List<string>();
MatchCollection sr = re.Matches(tempStr); foreach (Match me in sr)
{
lists.Add(me.Groups["img"].Value);//结果在lists
}