(?is)<span\s*class=""piclink""[^>]*>.*?<img[^>]*?src=(['""]?)([^'""\s]+)\1[^>]*>.*?</span>获取img中的src值,其中不解的三个问题
1。img 中\1表示什么意思;
2。src只有"或'标记开始,怎么没有标记结束;
3。m.Groups[2].Value; 为什么是2,不是0

解决方案 »

  1.   

    1. \1 就是捕获组一的匹配. 
    2. 就是src的"或'标记的结束. 
    3. 不明真相.
      

  2.   

    1。img 中\1表示什么意思;
    反向引用,例如
    aba
    (.)(.+?)\1
    (.)匹配到a,(.*?)匹配到b,然后\1表示分组1捕获到的内容的引用,这里引用的是结果,不是规则。所以到你这里就可以用这个方式来捕获成对的"",'',无
    2。src只有"或'标记开始,怎么没有标记结束;
    贴出你的例子,应该不会
    3。m.Groups[2].Value; 为什么是2,不是0
    0表示匹配的所有内容,相当于m.Value
    1表示分组1,就是第一对括号内的铺货,在你这里就是(['""]?),单引号、双引号、或src=后的空位置
    2表示你要的内容
      

  3.   


    说的非常好,还有一点不明白
    我这里不能匹配到src=无的值吧
      

  4.   

    当然可以的
    比如<span class="piclink" test><IMG src=http://avatar.profile.csdn.net/B/3/E/2_ceirel01.jpg ></span>