正则的问题,高手请帮忙,小弟菜鸟级别!! 3楼的大哥, 你那个正则 还是null 空的 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 试试看在正则表达式的末尾加上/mi,这表示多行查找,以及忽略大小写。<?php function getLinkNum($search) { $array = array( "link" => array( "url" => "http://jxflcp.net", "pattern" =>iconv('gbk', 'utf-8', '/双色球 <\/strong> <\/td> <td width=\"15%\" valign=\"middle\" align=\"center\"> <div align=\"middle\"> 第(.*)期/mi') ) ); return patternUrl($array["$search"]['url'],$array["$search"]['pattern']); } function patternUrl($url, $pattern) { $html = file_get_contents($url); // print $html; preg_match($pattern, $html, $matches); //print_r($matches); print_r($matches); } echo getLinkNum('link'); ?> 加了mi还是null 难道 采集的页面动了手脚? 问题 我好象找到了 就在这个 双色球 </strong> </td> <td width="15%" valign="middle" align="center"> <div align="middle"> 第2008112期 </div> </td> 问题 就在这些长长的 空格 里面。 如果我页面上采集,没有这些长空格的信息,都行。 这个长空格 怎么解决? 各位大哥们 "pattern" =>iconv('gbk', 'utf-8', '/双色球\s*<\/strong>\s*<\/td> <td width=\"15%\" valign=\"middle\" align=\"center\"> <div align=\"middle\">\s* 第(.*)期/mi') )\s* ); 除了/m意外,还需要/s,即加上/msi。不过加了以后会从第一个 “双色球” 开始匹配,还是不对。 正则我也改了下,看代码:<?php function getLinkNum($search) { $array = array( "link" => array( "url" => "http://jxflcp.net", // "pattern" => "/双色球\s*<\/strong> <\/td> \n <td width=\"15%\" valign=\"middle\" align=\"center\"> \n <div align=\"middle\"> \n 第(.*)期/mi" "pattern" => "/双色球.{1,200}第([0-9]*)期/smi")); return patternUrl($array["$search"]['url'],$array["$search"]['pattern']); } function patternUrl($url, $pattern) { $html = iconv("gbk", "utf-8", file_get_contents($url)); //echo $pattern; //print $html; preg_match($pattern, $html, $matches); //print_r($matches); print_r($matches); } echo getLinkNum('link'); ?> 另外,我的代码是用的utf-8编码。 你做的时候如果用的是gbk,则iconv的部分可以去除。 谢谢 microant 搞定了 再问下。为什么用smarty模板分离,css会有问题呢。 请问,PHP有这样的字符串处理函数吗?? 快帮我看看,很简单的问题就是不对,我晕了 求助关于file_get_content解决办法 php处理checkbox的问题 linux下运行的PHP能否读出excel表 如何去掉网页header信息 懂mysql的请进~! 如何用PHP给JPG图片做缩略图? PHP 保存xml 没有值 的标签 全部成了简写了 怎么让他不简写 phpmyadmin 备份与恢复的代码在哪些文件里面? PHP 有没有成熟开发环境的适合多人人开发的和产品开发的。
<?php
function getLinkNum($search)
{
$array = array(
"link" => array(
"url" => "http://jxflcp.net",
"pattern" =>iconv('gbk', 'utf-8', '/双色球 <\/strong> <\/td>
<td width=\"15%\" valign=\"middle\" align=\"center\">
<div align=\"middle\">
第(.*)期/mi')
)
);
return patternUrl($array["$search"]['url'],$array["$search"]['pattern']);
} function patternUrl($url, $pattern)
{
$html = file_get_contents($url);
// print $html;
preg_match($pattern, $html, $matches);
//print_r($matches);
print_r($matches);
}
echo getLinkNum('link');
?>
就在这个 双色球 </strong> </td>
<td width="15%" valign="middle" align="center">
<div align="middle">
第2008112期 </div> </td> 问题 就在这些长长的 空格 里面。 如果我页面上采集,没有这些长空格的信息,都行。 这个长空格 怎么解决? 各位大哥们
"pattern" =>iconv('gbk', 'utf-8', '/双色球\s*<\/strong>\s*<\/td>
<td width=\"15%\" valign=\"middle\" align=\"center\">
<div align=\"middle\">\s*
第(.*)期/mi')
)\s*
);
function getLinkNum($search)
{
$array = array(
"link" => array(
"url" => "http://jxflcp.net",
// "pattern" => "/双色球\s*<\/strong> <\/td> \n <td width=\"15%\" valign=\"middle\" align=\"center\"> \n <div align=\"middle\"> \n 第(.*)期/mi"
"pattern" => "/双色球.{1,200}第([0-9]*)期/smi"
));
return patternUrl($array["$search"]['url'],$array["$search"]['pattern']);
} function patternUrl($url, $pattern)
{
$html = iconv("gbk", "utf-8", file_get_contents($url));
//echo $pattern;
//print $html;
preg_match($pattern, $html, $matches);
//print_r($matches);
print_r($matches);
}
echo getLinkNum('link');
?>