示例搜索内容:爱迪生法上水道爱迪生法大撒广泛大师傅感发
<a href=/a>a</a>
这里是开头<div class=RegStart>
aaaaaaaaaa
<a href=/c>c</a>
bbbbbbbbbb<a href=/d>d</a>cccccccccc
ddddddddddddd这里都是不规则的信息.
<a href=/e>e</a>
</div>这里是结尾
<a href=/b>b</a>************************************8
求一次正则写法得出内容: 连接地址: /c,/d,/e 及超链接字符串 c,d,e
不要2次 RegEx=new RegEx()得出
可能需要用到递归

解决方案 »

  1.   

    foreach(var m in Regext.Matches(str, @"(?im)<a\s*href=(['""]?)(?<link>[^'"">]+)\1\s*>(?<txet>[^<>]+)</a>"))
    {
        var link = m.Groups["link"].Value;
        var text = m.Groups["text"].Value;
    }
      

  2.   

    foreach(Match m in Regext.Matches(str, @"(?im)<a\s*href=(['""]?)(?<link>[^'"">]+)\1\s*>(?<text>[^<>]+)</a>"))
    {
        var link = m.Groups["link"].Value;
        var text = m.Groups["text"].Value;
    }
      

  3.   

    **************************************这里是内容
    爱迪生法上水道爱迪生法大撒广泛大师傅感发
    <a href=/a>a</a>
    这里是开头<div class=RegStart>
    aaaaaaaaaa
    <a href=/c>c</a>
    bbbbbbbbbb<a href=/d>d</a>cccccccccc
    ddddddddddddd这里都是不规则的信息.
    <a href=/e>e</a>
    </div>这里是结尾
    <a href=/b>b</a>
    ****************************************
    先谢过~
    按照楼上的写法,将会得到 :a,c,d,e,b 5组
    我需要的是 一个正则求出 c,d,e 3组 不要a,b的哦~未能解决哦~!!!!!!!
      

  4.   


    void Main()
    {
     
    string hcontent2=@"爱迪生法上水道爱迪生法大撒广泛大师傅感发
    <a href=/a>a</a>
    这里是开头<div class=RegStart>
    aaaaaaaaaa
    <a href=/c>c</a>
    bbbbbbbbbb<a href=/d>d</a>cccccccccc
    ddddddddddddd这里都是不规则的信息.
    <a href=/e>e</a>
    </div>这里是结尾
    <a href=/b>b</a>";
    foreach(Match m in Regex.Matches(hcontent2,
    @"(?is)<div[^>]*?>(.*?<a[^>]*?href=(['""\s]?)(?<href>[^'""\s]+?)\2>(?<txt>[^<>]+)</a>.*?)+</div>"))
    {
      foreach(Capture c in m.Groups["href"].Captures)
      { 
       Console.WriteLine(c.Value); 
      }
     foreach(Capture c in m.Groups["txt"].Captures)
      { 
       Console.WriteLine(c.Value); 
      }
    }
    /* 
    /c
    /d
    /e
    c
    d

    */
    }