2009-09-03 60 views
0


我想從一個div(基於他的ID),使用PHP的PCRE獲取數據。目標是根據他的id獲取div的內容,並使用遞歸/深度來獲取div中的所有內容。這裏的主要問題是讓其他div在「主div」內,因爲正則表達式在獲得下一個</div>後會停止,它會在最初的<div id="test">之後找到。

我已經嘗試了很多不同的方法到主題,並沒有工作。在我看來,最好的解決方案是使用R參數(遞歸),但從來沒有讓它正常工作。

任何Ideais?

在此先感謝:D使用PHP PCRE獲取div內容

回答

1

你會更好使用某種形式的DOM解析器 - 正則表達式真的不適合這個問題。如果你想要的只是基本的HTML DOM解析,像simplehtmldom這樣的東西就是你的衚衕。安裝很簡單(只包括一個PHP文件),而且使用起來很簡單(2-3行將完成你所需要的)。

include('simple-html-dom.php'); 

$dom = str_get_html($bunchofhtmlcode); 
$testdiv = $dom->find('div#test',0); // 0 for the first occurrence 
$testdiv_contents = $testdiv->innertext;