首页 > 解决方案 > PregMatchAll 即使在正则表达式匹配时也总是返回 0

问题描述

我一直在这样做:

preg_match_all('!<div class="ratings">\s*?(.*?)\s*<\/div>!', $result, $match);

对于我的这个街区

<div class="ratings">
<h4><a href="https://www.abcd.com/star-ratings">Sex 
<i class="icon-star-filled highlight"></i><i class="icon-star-filled 
highlight"></i><i class="icon-star-filled highlight"></i><i 
class="icon-star-filled"></i><i class="icon-star-filled"></i></a></h4>
<h4><a href="https://www.abcd.com/star-ratings">Sex 
<i class="icon-star-filled highlight"></i><i class="icon-star-filled 
highlight"></i><i class="icon-star-filled highlight"></i><i 
class="icon-star-filled"></i><i class="icon-star-filled"></i></a></h4>
</div>

但是我的比赛在做的时候总是返回零

print_r($match[1]);

可能是什么问题?

标签: phpregexpreg-match-all

解决方案


将标志添加s到您的模式 !<div class="ratings">\s*?(.*?)\s*<\/div>!s http://xregexp.com/flags/


推荐阅读