本帖最后由 wh110 于 2012-10-30 13:32:28 编辑

解决方案 »

  1.   

    Regex GetLi =new Regex(@"<li><a href=\"(?<url>[^\"]+)\" target=""_blank"">(?<item1>[^\[]+)</a><font color=\"#aaaaaa\">(?<item2>[^<]+)</font></li>");
      

  2.   

    <li><a href=(?<url>[^\""]+) target=""_blank"">(?<item1>[^\[]+)</a><font color=""#aaaaaa"">(?<item2>[^<]+)</font></li>
      

  3.   

    <li><a href=\"html/2012-10-30/85775.shtml\" target=\"_blank\">建筑学专业办学30周年庆典举行[<font color=red>图</font>]</a><font color=\"#aaaaaa\">2012-10-30</font></li>
    <li><a href=\"html/[\d,4]-[\d,2]-[\d,2]/[\d+].shtml\" target=\"_blank\">\w+[<font color=red>\u</font>]</a><font color=\"#aaaaaa\">[\d,4]-[\d,2]-[\d,2]</font></li>最后你在用 replace 这 <li><a href= 没有用的 字符去掉。就得到你想要的 了
      

  4.   

    string pattern=@"<li><a\s*href=""([^""]+?)""\s*target=""_blank"">(.+?)\[<font\s*color=red>(.*?)</font>\]</a><font\s*color=""#aaaaaa"">([^<]+?)</font></li>";
    分别取Groups[1].Value,Groups[2].Value,Groups[3].Value,Groups[4].Value
      

  5.   

    你这个不行,取不到值<a(?:\\s+.+?)*?\\s+href=\"([^\"]*?)\".+>(.*?)</a>    我用这个可以取到href值,但groups[2]标题文字却取只取到了groups[3]的一个“]”