我想讓php代碼可以從網頁中獲取文本。該代碼從網站獲取文本,然後搜索文本以「N」開始,以「a」結尾,然後腳本將其添加到數組[0]。 我的正則表達式錯誤,請幫我解決這個問題,對不起,我英文不好php curl文本搜索字
這裏是我的代碼:
<?php
$url = "http://www.nokia.com/global/products/phone/lumia820/";
$ch = curl_init($url);
curl_setopt($ch, CURLOPT_HEADER, 0);
curl_setopt($ch,CURLOPT_RETURNTRANSFER, 1);
$result = curl_exec($ch);
curl_exec($ch);
curl_close($ch);
preg_match_all('/^N(.*)\a$/', $result, $matches[0]);
preg_match_all('/^M(.*)\m$/', $result, $matches[0]);
preg_match_all('/^M(.*)\c$/', $result, $matches[0]);
print_r($matches[0]);
?>
如果我用HTML HOR例嘗試,如何獲得700毫安作爲陣列[0],BL-5CA作爲陣列[2],如諾基亞陣列[3]
<div class="b-goods-specifications mod_cutted"> <div class="b-goods-specifications-item"> <ul class="b-goods-specifications-list"> <li class = "b-goods-specifications-row g-clearfix "> <div class="b-goods-specifications-cell"> <span> **capacity** </ span> </ div> <div class="b-goods-specifications-cell"> **700 mAh** </ div> </ li> <li class="b-goods-specifications-row g-clearfix"> <div class="b-goods-specifications-cell"> <span> **Model** </ span> </ div > <div class="b-goods-specifications-cell"> **BL-5CA** </ div> </ li> <li class="b-goods-specifications-row g-clearfix"> <div class = "b-goods-specifications-cell "> <span> **Brand** </ span> </ div> <div class="b-goods-specifications-cell"> **Nokia** </ div> </ li> <li class =" b-goods -specifications-row g-clearfix "> <div class="b-goods-specifications-cell"> <span> Type </ span> </ div> <div class="b-goods-specifications-cell"> Li -ion </ div> </ li> </ ul> </ div> </ div>
我不認爲你需要逃避你最後字符。使用這個:'/^N(。*)a $ /','/^M(。*)m $ /'和'/^M(。*)c $ /' – Grambot 2013-02-15 15:00:08