php preg match - how to get html tag?

落爺英雄遲暮 提交于 2019-12-13 02:38:00

问题


there were many threads about it, but I still need help. I need to use preg_match to get the text I need from HTML tags.

the HTML is:

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

(btw. I solved my problem with domdocument, but I need to use preg_match)

Please, help.

Regards.


回答1:


This?

<?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]);

Edit: you may want to include the 'face="Arial" color="red"'-bit in the regexp unless you want to match EVERY font-element's contents. You may also wanna include the <b> and <center> elements to narrow the search even further.

On a side note: This HTML looks very dated. Using center and font elements is very, very bad practice. So is using tables for layout.



来源:https://stackoverflow.com/questions/8594165/php-preg-match-how-to-get-html-tag

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!