2010-05-19 51 views
1

內查找數據我在玩弄一個想法,而我被困在這一部分。我想讀取一個外部HTML頁面,然後提取兩個<dd>標籤中保存的數據。我一直在使用file_get_contents,結果很好,但我對如何完成最後一部分感到不知所措。我想從中提取價值的兩個標籤總是被包含在一個特定的<div>中,想知道這可能有幫助嗎?閱讀外部HTML頁面,然後在

在我看來,它會將整個html文件讀入一個字符串,然後將所有數據轉儲到這個特定的<div>,並在關閉</div>後轉儲所有數據。那可能嗎?我認爲這需要我從未使用過的正則表達式語法。所以任何提示,鏈接或例子都會很棒!我可以根據需要提供更多信息。

回答

0

你太複雜了。只需加載頁面內容,然後搜索適當的正則表達式(preg_match())。這將做精

preg_match('~<tag id="foobar">(?P<content>.*?)</endtag>~is', $input, $matches); 
+0

是的,你可以使用正則表達式來解析HTML,[或不](http://stackoverflow.com/questions/1732348/regex-match-open-tags-except-xhtml-self-contained-tags/1732454#1732454) – hemp 2010-05-19 21:41:57

+0

大家都知道html是非正式語言。但事實上這個問題是:我用一些靜態短語包裝了一段文字,我怎麼找到它? Dom比簡單的正則表達式要慢得多(並且在php中比其他語言更差)。 – 2010-05-20 06:51:55

0

如果使用HTQL COM查詢頁面,查詢:<DD> 1:TX