当前位置:编程学习 > C#/ASP.NET >>

谁来帮下忙,求二个正则表达式

内容如下:

<div class="c" id="M_yhKOSulo5">
<div>
<span class="cmt">
转发了 
<a href="/u/2499195070">
震惊GIF图
</a>

</span>
<span class="ctt">
韦德同学,你又调皮了……[哈哈]
</span>
</div>
<div>
<a href="/mblog/pic/yhCvPyxQE?rl=0">
<img src="http://wp4.namicz.cn/wap128/94f6b0bejw1dsmcwzbbzag.gif" alt="图片"
class="ib" />
</a>
 
<a href="/mblog/oripic?u=94f6b0bejw1dsmcwzbbzag">
原图
</a>
 
<span class="cmt">
原转发文[158]
</span>
 
<a href="/comment/yhCvPyxQE?rl=0&#cmtfrm" class="cc">
原评论文[9]
</a>
</div>
<div>
<span class="cmt">
转发理由:
</span>
韦德同学,你又调皮了……[哈哈] 
<a href="/repost/dort/yhKOSulo5?pos=zan&from=zan_test&rl=0&st=ac0c">
+1
</a>
<a href="/repost/yhKOSulo5?rl=0&st=ac0c">
转发[38]
</a>
 
<a href="/comment/yhKOSulo5?rl=0&st=ac0c#cmtfrm" class="cc">
评论[1]
</a>
 
<a href="/fav/addFav/yhKOSulo5?rl=0&st=ac0c">
收藏
</a>
 
<span class="ct">
今天 13:24 来自皮皮时光机
</span>
</div>
</div>
<div class="s">
</div>
<div class="c" id="M_yhKIN9CzC">
<div>
<span class="cmt">
转发了 
<a href="/u/2499195070?st=ac0c">
震惊GIF图
</a>

</span>
<span class="ctt">
我擦,开车不能斗气啊,这司机脾气太尼玛大了~~[哈哈]
</span>
</div>
<div>
<a href="/mblog/pic/yhCUaC66e?rl=0&st=ac0c">
<img src="http://wp1.namicz.cn/wap128/94f6b0bejw1dsmene8jk8g.gif" alt="图片"
class="ib" />
</a>
 
<a href="/mblog/oripic?u=94f6b0bejw1dsmene8jk8g&st=ac0c">
原图
</a>
 
<span class="cmt">
原转发文[192]
</span>
 
<a href="/comment/yhCUaC66e?rl=0&st=ac0c#cmtfrm" class="cc">
原评论文[19]
</a>
</div>
<div>
<span class="cmt">
转发理由:
</span>
[哈哈] 
<a href="/repost/dort/yhKIN9CzC?pos=zan&from=zan_test&rl=0&st=ac0c">
+1
</a>
<a href="/repost/yhKIN9CzC?rl=0&st=ac0c">
转发[46]
</a>
 
<a href="/comment/yhKIN9CzC?rl=0&st=ac0c#cmtfrm" class="cc">
评论[6]
</a>
 
<a href="/fav/addFav/yhKIN9CzC?rl=0&st=ac0c">
收藏
</a>
 
<span class="ct">
今天 13:09 来自皮皮时光机
</span>
</div>
</div>

第一个是想得到:我擦,开车不能斗气啊,这司机脾气太尼玛大了~~[哈哈]
第二个是想得到:http://wp1.namicz.cn/wap128/94f6b0bejw1dsmene8jk8g.gif

要得到代码中的第二个结果,不是第一个,谁来帮下忙啊 --------------------编程问答-------------------- 上面的内容是二个节点(我自己称呼的)
我最终想要是采集第N个节点值,这个N值可以自己指定
求高手指点 --------------------编程问答--------------------
(?is)<span\sclass=(['"]?)ctt\1>(.*?)</span>.*?<img\ssrc=(['"]?)([^'"]+)\3[^>]*?>
至于要取第几个节点,你在
int node=2;
int x=1;
foreach(Match m in Regex.Mathes(yourhtml,@"(?is)<span\sclass=(['""]?)ctt\1>(.*?)</span>.*?<img\ssrc=(['""]?)([^'""]+)\3[^>]*?>"))
{
   if(x==node)
   {
        //m.Groups[2].Value   
        //m.Groups[4].Value  
       //就是你想要的
    }
else x++;
}
--------------------编程问答-------------------- 楼上的牛人
我先试一下 --------------------编程问答-------------------- 可不可以完全用正则表达式,不加入C#语言 --------------------编程问答--------------------
引用 4 楼  的回复:
可不可以完全用正则表达式,不加入C#语言

都的写代码啊,
(?is)<span\sclass=(['"]?)ctt\1>(.*?)</span>.*?<img\ssrc=(['"]?)([^'"]+)\3[^>]*?>
补充:.NET技术 ,  其他语言
CopyRight © 2022 站长资源库 编程知识问答 zzzyk.com All Rights Reserved
部分文章来自网络,