我想抓住所有html:
<table cellpadding="0" cellspacing="0" border="0" class="list" width="100%">
.
.
.
.
</tbody>
preg_match_all('XXXXXXXXXX', $this->markup, $links);
答案 0 :(得分:6)
一般来说,我建议使用DomDocument而不是正则表达式。但是在这种情况下,DomDocument需要一些额外的麻烦,因为OP需要HTML代码,而不仅仅是nodeValue(s)。 (无论如何,对于基于DomDocument的方法,您可以使用this之类的“解决方法”(以获取表格的内容,包括HTML。)
话虽如此,这是你要求的正则表达式:
$html = '<table cellpadding="0" cellspacing="0" border="0" class="list" width="100%">' .
'<tr><td>Lorem</td><td>Ipsum</td></tr>' .
'</table>';
preg_match_all('/<table.*?>(.*?)<\/table>/si', $html, $matches);
var_dump($matches[1][0]); // string(37) "<tr><td>Lorem</td><td>Ipsum</td></tr>"
答案 1 :(得分:0)
您应该使用DomDocument之类的内容,而不是使用正则表达式解析它。
答案 2 :(得分:0)
使用phpQuery进行此操作。 PhpQuery有像jQuery这样的语法,它只是为了理解