用正则表达式匹配如下html代码中的    show.jsp?txt_arcid=3304   
 <td width="84%" class="bbk"><img src="Images/arrow_003.gif" width="9" height="9"> <a href="show.jsp?txt_arcid=3304" target="_blank"> 电子图书采购公告</a></td>
我写成:<a href="(?<RESULT>[\s\S]*?)" target="_blank"> 这样为什么获取不到啊?

解决方案 »

  1.   

    try...//如果只是考虑楼主所给例子这种简单情况
    Regex reg = new Regex(@"(?is)(?<=<a\s+href="")[^'""\s>]+(?=""[^>]*>)");
    MatchCollection mc = reg.Matches(yourStr);
    foreach (Match m in mc)
    {
        richTextBox2.Text += m.Value + "\n";
    }
    //如果考虑复杂点的情况
    Regex reg = new Regex(@"(?is)(?<=<a\b(?:(?!href=).)*href=(['""]?))[^'""\s>]+(?=\1[^>]*>)");
    MatchCollection mc = reg.Matches(yourStr);
    foreach (Match m in mc)
    {
        richTextBox2.Text += m.Value + "\n";
    }