可用如下的代碼來實現(xiàn):
成都創(chuàng)新互聯(lián)公司業(yè)務包括:成品網(wǎng)站、企業(yè)產(chǎn)品展示型網(wǎng)站建設、品牌網(wǎng)站制作、電子商務型網(wǎng)站建設、外貿營銷網(wǎng)站建設(多語言)、商城網(wǎng)站開發(fā)、定制網(wǎng)站制作、網(wǎng)絡營銷推廣等。效率優(yōu)先,品質保證,用心服務是我們的核心價值觀,我們將繼續(xù)以良好的信譽為基礎,秉承穩(wěn)固與發(fā)展、求實與創(chuàng)新的精神,為客戶提供更全面、更優(yōu)質的互聯(lián)網(wǎng)服務!
?php
$str1="|1234|#2354#@2314@
|1314|#2154#@2214@
|1234|#2354#@2314@
|1314|#2154#@2214@";
if(preg_match_all("/\|(\d{4})\|\#(\d{4})\#\@(\d{4})\@/m",$str1,?$out,?PREG_PATTERN_ORDER))
for($i=0;$icount($out[0]);$i++)
{
echo?"{'".$out[1][$i]."','".$out[2][$i]."','".$out[2][$i]."'}br/";
}
?
效果如下所示:
{'1234','2354','2354'}
{'1314','2154','2154'}
{'1234','2354','2354'}
{'1314','2154','2154'}
正則提取div數(shù)據(jù)主要是使用PHP的file_get_content()函數(shù)。
具體示例:
HTML代碼:
div?class="chartInfo"??
div?class="line"/div
div?class="tideTable"??
strong潮汐表/strong數(shù)據(jù)僅供參考
table?width="500"?border="0"?cellspacing="0"?cellpadding="0"?
tbodytr??
td?width="100"pspan潮時?(Hrs)/span/p/td??
td?width="100"p00:58/p/td
td?width="100"p05:20/p/td
td?width="100"p13:28/p/td
td?width="100"p21:15/p/td
/tr??
tr??
tdpspan潮高?(cm)/span/p/td??
td?width="100"p161/p/td??
td?width="100"p75/p/td??
td?width="100"p288/p/td??
td?width="100"p127/p/td??
/tr??
/tbody/table??
h2時區(qū):-1000?(東10區(qū))??潮高基準面:在平均海平面下174CM/h2??
/div??
div?class="chart"??
/div??
/div
首頁先用file_get_content或curl獲取內容部分
PHP的正則處理程序:
?php
$ch?=?curl_init();??
curl_setopt($ch,?CURLOPT_URL,?$url);??
curl_setopt($ch,?CURLOPT_POST,?1);??
curl_setopt(?$ch,?CURLOPT_HEADER,?0?);??
curl_setopt(?$ch,?CURLOPT_RETURNTRANSFER,?1?);??
curl_setopt(?$ch,?CURLOPT_POSTFIELDS,?$data?);??
$return?=?curl_exec(?$ch?);??
curl_close(?$ch?);??
$regex4="/div?class=\"tideTable\".*?.*?\/div/ism";??
if(preg_match_all($regex4,?$return,?$matches)){??
print_r($matches);??
}else{??
echo?'0';??
}
?
會用正則就會抓取。
不會正則,一時半會也教不錯。
不過,推薦你使用phpQuery這個框架,用jQuery的使用器來抓取數(shù)據(jù)。
$ma=" /a class="text_count" href="#"(\d.*)/a/"
preg_match_all($ma,$str,$arr); 試試
用PHP正則表達式匹配,就可以提取class里面的數(shù)據(jù),并將no去除,完整的PHP程序如下
?php
$str='div?class="lot-nums"span?class="no7"/spanspan?class="no8"/spanspan?class="no5"/spanspan?class="no9"/spanspan?class="no2"/spanspan?class="no4"/spanspan?class="no6"/spanspan?class="no0"/spanspan?class="no3"/span?span?class="no1"/span/div';?
$regex='/span?class="no(\d+)"/i';?
preg_match_all($regex,$str,$result);?
print_r($result[1]);?
?
運行結果