HELP!请教正则的贪心匹配问题
sdts 2008-07-28 06:07:41 这是一些Javascript正则的资料:
当此字符紧随任何其他限定符(*、+、?、{n}、{n,}、{n,m})之后时,匹配模式是“非贪心的”。“非贪心的”模式匹配搜索到的、尽可能短的字符串,而默认的“贪心的”模式匹配搜索到的、尽可能长的字符串。例如,在字符串“oooo”中,“o+?”只匹配单个“o”,而“o+”匹配所有“o” 匹配除“\n”之外的任何单个字符。若要匹配包括“\n”在内的任意字符,请使用诸如“[\s\S]”之类的模式
我现在是要匹配以下文本,是两段完全相同的内容,我是想匹配到第一个“卖家信用”就结束,方法是:preg_match('/<div id="SellerName" class="wc:info">\s*<a.*>(.*)<\/a>[\s\S]*卖家信用/i', $fetch_result, $matches),$fetch_result就是以下文本内容,可是他是匹配到第二个"卖家信用"结束,按照贪心匹配的说法,我改写为preg_match('/(<div id="SellerName" class="wc:info">\s*<a.*>(.*)<\/a>[\s\S]*卖家信用)+?/i', $fetch_result, $matches)不成功,请各位大虾们帮帮忙!!!!!
<div id="SellerName" class="wc:info">
<a href="http://my.taobao.com/mytaobao/user-rate-d7fb1941f225a91a29199b3f1d8e2316.htm">三文大叔</a>
<span class="ww:token" ww:params="nick=三文大叔&tnick=三文大叔&display=inline"></span>
</div>
<ul id="MoreInfo">
<li>卖家信用:<strong><span class="rank:token" rank:params="type=s&uid=d7fb1941f225a91a29199b3f1d8e2316"><a href="http://my.taobao.com/mytaobao/user-rate-d7fb1941f225a91a29199b3f1d8e2316.htm">29941</a></span></strong>
</li>
</ul>
<div id="SellerName" class="wc:info">
<a href="http://my.taobao.com/mytaobao/user-rate-d7fb1941f225a91a29199b3f1d8e2316.htm">三文大叔</a>
<span class="ww:token" ww:params="nick=三文大叔&tnick=三文大叔&display=inline"></span>
</div>
<ul id="MoreInfo">
<li>卖家信用:<strong><span class="rank:token" rank:params="type=s&uid=d7fb1941f225a91a29199b3f1d8e2316"><a href="http://my.taobao.com/mytaobao/user-rate-d7fb1941f225a91a29199b3f1d8e2316.htm">29941</a></span></strong>
</li>
</ul>