为什么用preg_match 抓不到之间的内容

life169 2010-07-24 11:03:11
我用的代码是:

preg_match("/<head>(.*)<\/head>/i",$content, $matches);


匹配不到任何内容

而用

eregi("<head>(.*)</head>",$content, $matches);


则能抓到<head></head>之间的内容

谁能给出preg_match抓取<head></head>之间的内容的正则。
...全文
82 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
life169 2010-07-24
  • 打赏
  • 举报
回复
知道原因了,结贴给分。
感谢 amani11 同学
life169 2010-07-24
  • 打赏
  • 举报
回复
感谢 amani11
能讲一下为什么吗
为什么/i和/isu不行,而/is却可以呢
amani11 2010-07-24
  • 打赏
  • 举报
回复


require_once("snoopy.class.php");
$snoopy = new Snoopy;
$url="http://www.sina.com.cn";
$snoopy->fetch($url);
$content = $snoopy->results;
preg_match("/<head>(.*?)<\/head>/is",$content, $matches);//这样应该可以了
print_r($matches);

life169 2010-07-24
  • 打赏
  • 举报
回复

require_once("snoopy.class.php");
$snoopy = new Snoopy;
$url="http://www.sina.com.cn";
$snoopy->fetch($url);
$content = $snoopy->results;
preg_match("/<head>(.*)<\/head>/i",$content, $matches);
print_r($matches);

总是抓不到东西,页面光光的,查看原码也是空的。
amani11 2010-07-24
  • 打赏
  • 举报
回复
$content
amani11 2010-07-24
  • 打赏
  • 举报
回复
代码贴出来看看
life169 2010-07-24
  • 打赏
  • 举报
回复
to helloyou0
能说具体点吗?
preg_match("/<head>(.*)<\/head>/mi",$content, $matches);
是这样吗?经测试还是不行啊。
helloyou0 2010-07-24
  • 打赏
  • 举报
回复
/mi
life169 2010-07-24
  • 打赏
  • 举报
回复
申明一下,不是大小写的问题。页面的原代码都是小写的。

21,886

社区成员

发帖
与我相关
我的任务
社区描述
从PHP安装配置,PHP入门,PHP基础到PHP应用
社区管理员
  • 基础编程社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧