<li><a href="/belle/asia/4096.html"><img src="/images/home/p05.jpg" width="133" height="133" border="0" /><p>xxxx</p></a></li>
  正则获取  a标签的href值

解决方案 »

  1.   

    加个条件   href 链接地址必须是 .html 的 
      

  2.   

    <li><a[^>]*?href=(['""\s])(?<href>[^'""\s]+)\1[^>]*?><img ?.*></a></li>  我自己写的 ·
      

  3.   

     嗯 按照你的写法,再替换掉href=什么的就是值
    string pattern = @"href=(\S+)(?<href>[\S]+)\1[^>]*?";
                string patternResult = Regex.Match(str, pattern).ToString();
      

  4.   

     string str = "<li><a href=\"/belle/asia/4096.html\"><img src=\"/images/home/p05.jpg\" width=\"133\" height=\"133\" border=\"0\" /><p>xxxx</p></a></li>";
                Regex reg = new Regex(@"(?is)<a[^>]*?href=(['""]?)(?<url>[^'""\s>]+)\1[^>]*>(?<text>(?:(?!</?a\b).)*)</a>");
                MatchCollection mc = reg.Matches(str);            foreach (Match m in mc)
                {
                    Console.Write(m.Groups["url"].Value + "\n");
                }
    /belle/asia/4096.html
      

  5.   

    string str = "<li><a href=\"/belle/asia/4096.html\"><img src=\"/images/home/p05.jpg\" width=\"133\" height=\"133\" border=\"0\" /><p>xxxx</p></a></li>";
                string pattern = "<a href=\"(?<url>.*?)\">.*</a>";            foreach (Match item in Regex.Matches(str, pattern))
                {
                    Console.WriteLine(item.Groups["url"].Value);
                }
      

  6.   

      我没把规则说清楚 我是要获取Li标签下面 A标签中包含<img>标签的。A   凡是链接地址为.html的所有链接地址 上面的文字要全部匹配· 不是只匹配A标签 ·
      

  7.   

    string a = "<li><a href=\"/belle/asia/4096.html\"><img src=\"/images/home/p05.jpg\" width=\"133\" height=\"133\" border=\"0\" /><p>xxxx</p></a></li>";        MatchCollection mc = Regex.Matches(a, @"(?i)(?<=<li>)<a[^>]+?href=""[^""]*?\.html""(?!</a)[\S\s]+</a>");
            foreach (Match m in mc)
            {
                Console.WriteLine(m);
            }
      

  8.   

    (?is)<li><a\s*href=(['"]?)(?<url>[^'".]+\.html)\1[^>]*><img[^>]*>.*?</li>href的值取url分组整个值取分组0
      

  9.   

    (?i)(?<=<a\s[^>]*href[^=]*=[^=\x22']*(['\x22]?))((?!\1).)+
      

  10.   


    /*
    <li><a href="/belle/asia/4096.html"><img src="/images/home/p05.jpg" width="133" height="133" border="0" /><p>xxxx</p></a></li>
      正则获取 a标签的href值
    */import java.util.regex.Matcher;
    import java.util.regex.Pattern;public class Test{
    public static void main(String[] args){
    String content = "<li><a href=\"/belle/asiahtml/4096.html\" d=\"dd\"><img src=\"/images/home/p05.jpghtml\" width=\"133\" height=\"133\" border=\"0\" /><p>xxxx</p></a></li>";
    String regex = "<a.*?href=\"((\\w|\\d|/)+\\.html)\"";
    Pattern pattern = Pattern.compile(regex);
    Matcher matcher = pattern.matcher(content);
    if(matcher.find()){
    System.out.println(matcher.group(1));
    }else{
    System.out.println("cann't find.");
    }
    }
    }
      

  11.   


    <?php
    $string = '<li><a href="/belle/asia/4096.html"><img src="/images/home/p05.jpg" width="133" height="133" border="0" /><p>xxxx</p></a></li>';
    $pattern = '/\<li\>\<a href=(.*?)>(.*?)\<\/a>\<\/li\>/';
    $s = preg_match_all($pattern,$string,$matches );
    var_dump($matches);
    array(3) {
      [0]=>
      array(1) {
        [0]=>
        string(126) "<li><a href="/belle/asia/4096.html"><img src="/images/home/p05.jpg" width="133" height="133" border="0" /><p>xxxx</p></a></li>"
      }
      [1]=>
      array(1) {
        [0]=>
        string(23) ""/belle/asia/4096.html""
      }
      [2]=>
      array(1) {
        [0]=>
        string(81) "<img src="/images/home/p05.jpg" width="133" height="133" border="0" /><p>xxxx</p>"
      }
    }