想做一个抓取论坛信息,需要标题和地址,不过多个论坛的代码都不一样,以下是某两个论坛的代码片断论坛一
<tr align="center" class="tr3 t_one" onMouseOver="this.className='tr3 t_two'" onMouseOut="this.className='tr3 t_one'"><td><a title="打开新窗口" href="read.php?tid=1138438" target="_blank"><img src='image/newblue/thread/topicnew.gif' border=0></a></td><td style="text-align:left;padding-left:8px" id="">  <h3><a href="read.php?tid=1138438" target="_blank" id="">这发色,还可以吗?</a></h3> 
  <img src='image/newblue/file/img.gif' align='absbottom' border=0> <img src="image/newblue/file/new.gif" align="absmiddle" alt="新帖标志" /> </td>论坛二
<tr bgcolor='#FFF8E1'>
<td align='center' width='5%'>
<img src=images/status/golden.gif></td>
<td align='center' width='5%'>
<img src=images/icons/icon1.gif></td>
<td align='left' width='40%'><a href=topic_show.jsp?id=4160834&oldpage=1&thesisid=92&flag=topic1 class=black>偶家宝宝的睡姿,来摆显一下&nbsp;</a></td>
<td align='center' width='8%'><a href=user_query.jsp?action_done=1&Username=困难重重 class=black>困难重重</a></td>
<td align='center' width='8%'>1</td>
<td align='center' width='25%'>2008-01-29 22:29 <a href=user_query.jsp?action_done=1&Username=我们的纯一 class=black>我们的纯一</a></td>
<td align='center' width='9%'>279</td>
</tr>我的思路是在<tr>与</tr>之间截取第一个<a href=>,不知道正则表达式怎么写?

解决方案 »

  1.   

    文本没有特点...
    第一个除了h3,没看到什么抓取的依据..你代码给的太少了..第二个class=black的link...也不知道后面有没有重复的....
      

  2.   

    第一个: 如果都是“<h3> <a   href="read.php?tid=”开头的话,标题可以如下获取Regex r = new Regex(@"<h3>\s*<a[^>]*?href\s*=\s*""read.php?tid=" + @"([^>]*?)>(?<title>[\s\S]*)?<\s*/\s*a\s*>");
    string content = @"<h3> <a   href=""read.php?tid=1138438""   target=""_blank""   id=""""> 这发色,还可以吗? </a> </h3>   <img   src='image/newblue/file/img.gif'   align='absbottom'   border=0> ";
    string w = r.Match(content).Result("${title}").Trim();Console.WriteLine(w);
      

  3.   

    我的思路是在 <tr> 与 </tr> 之间截取第一个 <a href=> ,不知道正则表达式怎么写? 
    ====================================================================<a title="打开新窗口" href="read.php?tid=1138438" target="_blank"> <img src='image/newblue/thread/topicnew.gif' border=0> </a>按照你说的应该捕获这个,楼主能把问题说明白点吗?那些红字之外的?;是不要的字符,还是没标成红色?