2012-08-22 111 views
0

有人可以告訴我爲什麼這不會工作?preg_match_all():編譯失敗:沒有重複的偏移量203 runescape

我收到錯誤 「preg_match_all():編譯失敗:沒有重複的偏移203」

$html = file_get_contents('http://services.runescape.com/m=itemdb_rs/results.ws?query='.urlencode($term).'&price='.$pricerange.'&members='.$members); 
$html = str_replace(array("\r","\n"), "", $html); 
$regexp = '#<tr data-item-id="(.*?)"><td class="(.*?)"><img src="(.*?)" alt="(.*?)"><a href="(.*?)">(.*?)</a></td><td><img src="(.*?)" alt="(.*?)" title="(.*?)"></td><td class="(.*?)">(.*?)</td><td class="(.*?)">(.?*)</td></tr>#'; 
preg_match_all($regexp, $html, $matches); 
print_r($matches); 

示例URL會在的file_get_contents

http://services.runescape.com/m=itemdb_rs/results.ws?query=gold%20bar&price=all&members=no 

感謝您使用:)

+2

你能提供的完整網址是'file_get_contents'內的個例?沒有它,我們無法幫助你。 – j0k

+0

我建議使用[DOM](http://ar2.php.net/manual/en/book.dom.php)而不是正則表達式。它更可靠。 – Leri

+0

已經爲file_get_contents添加了一個完整的URL示例:) –

回答

0

我建議你的錯誤就在這裏:

<td class="(.*?)">(.?*)</td></tr># 

更換由

<td class="(.*?)">(.*?)</td></tr># 
+0

非常感謝你,我不能相信我錯過了這個錯誤,我現在感到非常愚蠢,但是謝謝你幫助我:) –

相關問題