看板 PHP 關於我們 聯絡資訊
大家好 小弟最近在研究有關reguler expression的用法 而我嘗試抓yahoo的搜尋頁面的連結 例如:http://tw.search.yahoo.com/search/news?fr=yfp&ei=UTF-8&p=%E5%A4%A7%E5%A E%B6%E5%A5%BD&fr2=tab-web 而我想抓搜尋頁面裡面的各個連結和分頁連結 我發現到連結都是由 <a href="http://tw.wrs.yahoo.com/_ylt=A8tUxyqKvHNHHy4AQQNw1gt./SIG= 12f1n7o30/EXP=1198853642/**http%3A// tw.news.yahoo.com/article/url/d/a/071128/1/ozs4.html" target=_blank> 類似這樣所組成 於是我就寫了個 preg_match_all("|.*<a href=(.*) target=_blank.*|Ui", $contents, $output); 這樣的判斷式來抓搜尋頁面的連結 但結果只抓到 "http://tw.news.yahoo.com/articleurl/d/a/071128/1/ozs4.html" 這部分 雖然此連結正好是我所需要的 但是我很好奇為什麼我寫的判斷式明明是抓從<a href=開始 到 (空白)targer_blank的 字串,為何結果並不是如此? 且當我在抓分頁連結的時候,嘗試了很多種判斷方法,都無法順利抓到,好像在判斷 _底線的時候出了問題,我就算使用了[_]也沒辦法解決,我在這方面是新手,希望各位 大大可以指導我,非常感謝!! -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 61.217.96.48