php preg match - 如何获取html标签?

时间:2011-12-21 17:54:15

标签: php html regex tags preg-match

关于它有许多线索,但我仍然需要帮助。 我需要使用preg_match从HTML标签中获取所需的文本。

HTML是:

<td>
<center>
<b>
<font face="Arial" color="red">(I need this content)</font>
</b>
</center>
</td>

(顺便说一句。我用domdocument解决了我的问题,但我需要使用preg_match)

请帮助。

问候。

1 个答案:

答案 0 :(得分:2)

此?

<?php
$html = '<td>
<center>
<b>
<font face="Arial" color="red">(I need this content)</font>
</b>
</center>
</td>';

$matches = array();

preg_match_all('/<font.*?>(.*?)<\/font>/is', $html, $matches);

var_dump($matches[1]);

编辑:您可能希望在正则表达式中包含'face =“Arial”color =“red”' - 位,除非您想要匹配每个font-element的内容。您可能还想包含<b><center>元素,以进一步缩小搜索范围。

旁注:此HTML看起来非常过时。使用中心和字体元素非常非常糟糕的做法。所以使用表格进行布局。