大橙子网站建设,新征程启航
为企业提供网站建设、域名注册、服务器等服务
正则提取div数据主要是使用PHP的file_get_content()函数。
成都创新互联于2013年创立,是专业互联网技术服务公司,拥有项目成都网站建设、成都做网站网站策划,项目实施与项目整合能力。我们以让每一个梦想脱颖而出为使命,1280元金沙做网站,已为上家服务,为金沙各地企业和个人服务,联系电话:18980820575
具体示例:
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正则表达式可以匹配/div第一次出现的位置,但是PHP还有strpos和strripos两个函数可以搜索/div在字符串第一次出现的位置,其中strripos是搜索时不区分大小写的搜索函数.因此,我给你个例子,并且把三种方法都列出来,你看看吧.
?php
$str = "divasfdwqreqw/divsafqwfe";
$pattern = '/\/div/i';
preg_match_all($pattern, $str, $matches,PREG_OFFSET_CAPTURE);
print_r($matches[0][0][1]."br/");
$s_start=strpos($str,"/div");
print_r($s_start."br/");
$s_start_1=strripos($str,"/DIV");
print_r($s_start_1);
?
运行结果:
15
15
15