这个正则为何匹配不到。

@Ta 2014-08-01 2074点击
这是内容
<?php
$nr='<div class="question">
<h2 class="question-title"> 男生总是表示又梦见我了,而且是春梦之中,这代表什么?</h2>
<div class="answer">
<div class="meta">
<img class="avatar" src="http://i1.tietuku.com/2c122e23b74605ff.jpg">
<span class="author"> 夏吉吉,</span><span class="bio"> 傲娇萌主。</span>
</div>
<div class="content">
<p> 他说这么走肾的话,你却这么走心的揣测,不在一个频道昂。</p>
</div>
</div>
<div class="view-more"><a href="http://www.zhihu.com/question/24669922"> 查看知乎讨论
<span class="js-question-holder"></span></a></div>
</div>';

$contents= array();
preg_match_all("/<div class=\"content\">(.*?)<\/div>/", $nr,$contents);
$contentnum=count($contents[0]);
print_r($contents);

?>

回复列表(10|隐藏机器人聊天)
  • @Ta / 2014-08-01 / /
    $contents  已经是数组  不用在上面定义数组
  • @Ta / 2014-08-01 / /
    @eoo,问题不在这里。我用

    $name= array();
    preg_match_all("/<span class=\"author\">(.*?)<\/span>/", $nr, $name);
    $namenum=count($name[0]);
    print_r($name);
    能匹配到。。。。。
  • @Ta / 2014-08-01 / /
    @Curtion,没在电脑前 帮不了你了
  • @Ta / 2014-08-01 / /
    正则 错了 

  • @Ta / 2014-08-01 / /
    @runvx,谢谢,已解决。不过好像加上?就是懒惰模式了?
  • @Ta / 2014-08-01 / /
    @Curtion,加?是局部关闭贪婪模式   U是全局关闭贪婪模式
  • @Ta / 2014-08-01 / /
    @eoo,嗯。  谢谢
  • @Ta / 2014-08-01 / /
    @Curtion,你去查一下  修饰符s的作用  就知道你错在哪里了  为什么一般匹配 HTML一般都会加上修饰符isU
  • @Ta / 2014-08-01 / /
    @eoo,好
  • @Ta / 2014-08-01 / /
    @Curtion,    .*就是匹配除换行符以外的任何字符  也就是说  而我们写网页和代码都需要回车换行, s就是修改模式  让它也也匹配换行   。 这也就是你出错的最大原因。
添加新回复
回复需要登录