日期:2014-05-20  浏览次数:20431 次

老调重弹,求一正则!
HTML code

                        <ul class="vv41Table">
                         <li class='vv4TableDIV1' >
                        <span class="vv41A"><a href="../ddddd/sss" target="_blank">********</a></span></li>
                         <li class='vv4TableDIV1' >
                        <span class="vv41A"><a href="../ddddd/sss" target="_blank">********</a></span></li>
                         <li class='vv4TableDIV1' >
                        <span class="vv41A"><a href="../ddddd/sss" target="_blank">********</a></span></li>
                         <li class='vv4TableDIV1' >
                        <span class="vv41A"><a href="../ddddd/sss" target="_blank">********</a></span></li>
                        </ul>

页面里有这么一个列表,匹配列表里面的a标签!ul外面也会有a标签,但是不匹配,只匹配<ul class="vv41Table">下的a标签





------解决方案--------------------
C# code
        string s = File.ReadAllText(Server.MapPath("~/test.txt"));
        MatchCollection matches=Regex.Matches(s, @"(?is)(?<=<ul[^>]+class=""vv41Table""[^>]*>.*?)<a[^>]+>.*?</a>(?=.*?</ul>)");
        foreach (Match match in matches)
            Response.Write(Server.HtmlEncode(match.Value) + "<br/>");

------解决方案--------------------
<ul class="vv41Table">
<li class='vv4TableDIV1' >
<span class="vv41A"><a href="../ddddd/sss" target="_blank">********</a></span></li>
<li class='vv4TableDIV1' >
<span class="vv41A"><a href="../ddddd/sss" target="_blank">********</a></span></li>
<li class='vv4TableDIV1' >
<span class="vv41A"><a href="../ddddd/sss" target="_blank">********</a></span></li>
<li class='vv4TableDIV1' >
<span class="vv41A"><a href="../ddddd/sss" target="_blank">********</a></span></li>
</ul>
 <ul class="vv41Table1">
<li class='vv4TableDIV1' >
<span class="vv41A"><a href="../ddddd/sss" target="_blank">********</a></span></li>
<li class='vv4TableDIV1' >
<span class="vv41A"><a href="../ddddd/sss" target="_blank">********</a></span></li>
<li class='vv4TableDIV1' >
<span class="vv41A"><a href="../ddddd/sss" target="_blank">********</a></span></li>
<li class='vv4TableDIV1' >
<span class="vv41A"><a href="../ddddd/sss" target="_blank">********</a></span></li>
</ul>
------------------------------------
这样结果不正确
------解决方案--------------------