大橙子网站建设,新征程启航
为企业提供网站建设、域名注册、服务器等服务
正则提取div数据主要是使用PHP的file_get_content()函数。
成都创新互联公司专注于新华企业网站建设,响应式网站开发,商城网站制作。新华网站建设公司,为新华等地区提供建站服务。全流程定制开发,专业设计,全程项目跟踪,成都创新互联公司专业和态度为您提供的服务
具体示例:
HTML代码:
div class="chartInfo"
div class="line"/div
div class="tideTable"
strong潮汐表/strong数据仅供参考
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时区:-1000 (东10区) 潮高基准面:在平均海平面下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';
}
?
用PHP正则表达式匹配,就可以提取class里面的数据,并将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]);
?
运行结果
可用如下的代码来实现:
?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'}