当前位置: 代码迷 >> ASP.NET >> 老调重弹,求一正则!该如何解决
  详细解决方案

老调重弹,求一正则!该如何解决

热度:6861   发布时间:2013-02-26 00:00:00.0
老调重弹,求一正则!
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>
------------------------------------
这样结果不正确
------解决方案--------------------------------------------------------