获得' p'在PHP中使用preg_match标记

时间:2015-02-23 05:37:06

标签: php preg-match

我可以使用下面的PHP代码

在标签'p'中获取值
$pattern ='/<p>(.*)<\/p>/';
$str = '<div class="sample"><p>Hi welcome</p></div>';
preg_match($pattern, $str, $matches);
print_R($matches);

但我还有另一个HTML代码,它在tag break标签后面有更多空间。这是我的代码。

<div class="boxes-box-content"><p>Call: (+61 3) 8639 9000<br />
 <a href="mailto:info@rgit.edu.au">info@rgit.edu.au</a><br />
  28-32 Elizabeth Street, Melbourne<br />
  VIC 3000, Australia</p>
</div>

在上面的代码中,break标签后面有更多空格。所以我无法获得标签'p'的值。 是否有任何其他方法可以获得'p'标签的值。

我希望得到结果

致电:(+ 61 3)8639 9000
  info@rgit.edu.au
  墨尔本伊丽莎白街28-32号   VIC 3000,澳大利亚

1 个答案:

答案 0 :(得分:2)

解析HTML的最佳方法是使用PHP DOM Class。虽然如果你仍然想在这里使用preg_match可以使用下面的正则表达式(添加)并检查,

$pattern = "/<p>(.*)<\/p>/s";

Woking DEMO