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

正则表达式求教。。。
<ul class="menu">
    <li class="sub">AAA</li>
    <li class="sub">BBB</li>
    <li class="sub">CCC</li>
</ul>
<ul class="menu">
    <li class="sub">AAA</li>
    <li class="sub">BBB</li>
</ul>
<ul class="menu">
    <li class="sub">AAA</li>
    <li class="sub">BBB</li>
    <li class="sub">CCC</li>
    <li class="sub">DDD</li>
</ul>


比如上面一段html,我只想匹配有两个class为sub的li子元素的ul,正则怎么写?

string pattern = @"<ul[^>]+class=""menu""[^>]*>(<li[^>]+class=""sub""[^>]*>.*</li>){2}</ul>";
正则表达式 C# .NET

------解决方案--------------------
多多 查资料 看看书 就会啦
------解决方案--------------------
try
         
   string pattern = @"(?is)<ul[^>]*?class=""menu""[^>]*>(\s*<li[^>]*?class=""sub""[^>]*>[^<>]+</li>\s*){2}</ul>";