<div class="pageNavBot">
                <div class="pageNav">
                    <span>共<strong>47</strong>个产品</span><a class="pre preDisable" href="javascript:void(0)"><span><span>上一页</span></span></a>
                    <a class="curr" href="javascript:void(0)"><span>1</span></a> <a href="http://www.newegg.com.cn/SubCategory/575-2.htm#itemGrid1">
                        <span>2</span></a> <a class="next" href="http://www.newegg.com.cn/SubCategory/575-2.htm#itemGrid1">
                            <span><span>下一页</span></span></a>
                    <input type="text" maxlength="4" id="setShowPageNav" value="自定义" class="input70 hasDefaultText">
                    <a id="btnSetShowPageNav" style="display: none;" href="javascript:void(0);" ref1="http://www.newegg.com.cn/SubCategory/575-paramPageNumber.htm#itemGrid1">
                        <span>确定</span></a></div>
            </div>
用正则表达式截取当前页,和第二页,或者还有更多页,我想截取除当前页以外其他页码的超链接。
正则表达式刚学,不会写。请帮忙,谢谢。

解决方案 »

  1.   

    (?is)<a\b[^>]*?class=(["']?)(?:(?!(curr)).)+?\1[^>]*?href=(["']?)([^"']*?)\3[^>]*>
    取第四个分组
    Groups[4].Value
      

  2.   

    改一下正则
    (?is)<a\b[^>]*?(class=(["']?)(?:(?!(curr)).)+?\1)?[^>]*?href=(["']?)([^"']*?)\4[^>]*>
      

  3.   

    取第五个分组
    Groups[5].Value
      

  4.   

    <a href="http://www.newegg.com.cn/SubCategory/575-2.htm#itemGrid1">
      <span>2</span></a>
      

  5.   

    谢谢噢,可是我用了会出现一点错误。
    Regex reg = new Regex(@"(?is)<a\b[^>]*?(class=(["']?)(?:(?!(curr)).)+?\1)?[^>]*?href=(["']?)([^"']*?)\4[^>]*>", RegexOptions.Multiline);
      

  6.   

    双引号转义
    Regex reg = new Regex(@"(?is)<a\b[^>]*?(class=([""']?)(?:(?!(curr)).)+?\1)?[^>]*?href=([""']?)([^""']*?)\4[^>]*>", RegexOptions.Multiline);