一个网页里面有多链接 
比如: <a href=../20/index.html>广告 </a> 
<a href=../aa/index.html>摄影 </a> 
求一个正则表达列出这些链接,列出来,同时能取到“广告”和“摄影” 
另外一组链接: <a href =../6/content_2.htm>项目1 </a>, <a href =../5/content_1.htm>项目2 </a> 也要取出相关的链接和title
请分别写这两个的正则

解决方案 »

  1.   

    (?<=\>)[^\<\>]*(?=\<)
    (?<=href=)[^\<\>]*(?=\>)
      

  2.   


    (?<=href=)[^\<\>]*(?=\>)这个正则可以取到内容,但是有些无关的链接也取进来
      

  3.   

    http://hi.csdn.net/link.php?url=http://topic.csdn.net%2Fu%2F20100113%2F17%2F9b7abc87-7840-4a93-8eb3-be39dafd35b0.html
    我9楼的答案
      

  4.   

      string str = @"<a href =../6/content_2.htm>项目1 </a>, <a href =../5/content_1.htm>项目2 </a> ";
                Regex re = new Regex(@".*?href\s*=(?<href>[^>]*)>(?<title>[^<]*).*?");
                MatchCollection mc=re.Matches(str);
                foreach(Match m in mc)
                    Console.WriteLine("{0} {1}",m.Groups["href"].Value,m.Groups["title"].Value);
      

  5.   

    <a\s*href\s*=(?<link>[^>]+)>(?<title>[^<]+)</a>