日期:2014-05-17  浏览次数:20415 次

求正则表达式的写法
已知目标码是:
<a href="http://www.abc.com/image.jsp?pic=1234" target="_blank" style="background-image:url(http://img04.abc.com/image/1.jpg)" id="img"  data-hasZoom="400"  class="s1">
<span id="123"></span></a>
且id="img"是唯一的,现在想匹配得到http://img04.abc.com/image/1.jpg,请问怎么写,谢谢。

Regex regtm = new Regex(@"(?is)<a[^>]*?id=""img""[^>]*?style=(['""]?)([^'""]+)\1[^>]*?>(.*)</a>");
String test = regtm.Match(code).Groups[2].Value;
为什么不行呢?

------解决方案--------------------
确定得到的只有一条数据的话
(?<=url\().*(?=\)")
------解决方案--------------------

<a.*?url\((.*?)\).*?>



Match 1 of 1: <a href="http://www.abc.com/image.jsp?pic=1234" target="_blank" style="background-image:url(http://img04.abc.com/image/1.jpg)" id="img"  data-hasZoom="400"  class="s1">      0    168
Group 1: http://img04.abc.com/image/1.jpg     92     32


------解决方案--------------------
貌似不是直接可以用...仅供参考~
这是之前写的取IMG标签里面的SRC属性值
Regex Re = new Regex(@"<img[^>]+?src=""([^>]+?)""[^>]*?>", regexOptionsI);