问题描述
比如,页面里有多个这种相同的代码块(当然是循环出来的),能不能做到只采集规定的前几个(比如就想要前3个div或是前5个div)<div><ul其它属性><li....>......其他标签</div><div><ul其它属性><li....>......其他标签</div><div><ul其它属性><li....>......其他标签</div>
解决方案
解决方案二:
自己顶
解决方案三:
用正则匹配div{5}即可
解决方案四:
完全可以啊正则是首选其次用index也可以比如取第二个divstringstr=XX.indexof("<div>",XX.indexof("<div>"));
解决方案五:
如果那个层有特殊的属性比如id=“XX”那么你用indexof就更好了
解决方案六:
原r=newRegex("<listyle="width:200px;margin-top:21px;">.+?</div>");mc=r.Matches(tblb);应该改成下面这样?mc.count为0r=newRegex("<listyle="width:200px;margin-top:21px;">.+?</div>{5}");r=newRegex("<listyle="width:200px;margin-top:21px;">.+?</div>");mc=r.Matches(tblb+"{5}");=r.Matches(tblb);还是下面这样呢?这个也不对r=newRegex("<listyle="width:200px;margin-top:21px;">.+?</div>");mc=r.Matches(tblb+"{5}");
解决方案七:
????怎么实现呢
解决方案八:
楼上说的很清楚了啊?你要嫌正则表达式不好用就用index,别等被人给你写源码啊
解决方案九:
我能想到的及找到资料就是5楼写的那样了,但还是没有答案,所以继续等
解决方案十:
大半夜的了,继续等
解决方案十一:
能。别等了。
解决方案十二:
该回复于2011-12-08 08:52:14被版主删除
解决方案十三:
楼上不厚道,继续期待
解决方案十四:
如何用正则做到呢?
解决方案十五:
如果没有嵌套的话stringstr=@"<div><ul1><li....>......1</div><div><ul2><li....>......2</div><div><ul3><li....>......3</div>";Regexreg=newRegex(@"(?is)(?:<divb.*?</div>s*){2}");foreach(Matchminreg.Matches(str))Console.WriteLine(m.Value);
解决方案:
楼上可以解释一下(@"(?is)(?:<divb.*?</div>s*){2}");谢谢了