关于PHP 获取信息问题
<?php<br />
$baidu="http://www.baidu.com/s?wd=site%3Ahao123.com";<br />
$site=file_get_contents($baidu);<br />
$site= iconv("UTF-8","GB2312", $site);<br />
ereg("<title>(.*)</title>", $site,$count);<br />
print_r($count); //获取好主题在百度中的收录数量<br />
<br />
?>
这个能获得结果:Array ( [0] => [1] => 百度搜索_site:hao123.com )
但是:
<?php<br />
$baidu="http://www.baidu.com/s?wd=site%3Ahao123.com";<br />
$site=file_get_contents($baidu);<br />
$site= iconv("UTF-8","GB2312", $site);<br />
ereg("<strong>(.*)</strong>", $site,$count);<br />
print_r($count); //获取好主题在百度中的收录数量<br />
<br />
?>
这个就不行了。。。
求解释,还有怎么获得百度收录量。。。。
------最佳解决方案-------------------- <br />
preg_match('%<strong>找到相关结果数(.*?)个。</strong>%i', $site,$count);<br />
------其他解决方案--------------------
正则里面的"."匹配除"\n"外的任意一个字符,不能匹配中文。<br />
preg_match('%<strong>找到相关结果数(.*?)个。</strong>%i', $site,$count);<br />
和下面的一样:
preg_match('/找到相关结果数(.*?)个。 /i', $site,$count);
------其他解决方案--------------------
引用:
PHP code?12preg_match('%找到相关结果数(.*?)个。 %i', $site,$count);
其实这种
preg_match('/<strong>找到相关结果数(.*)个。<\/strong>/i',$site,$count);
就可以了。
------其他解决方案-------------------- %
找到相关结果数(.*?)个。 %i关键是最后的那个“i”表示忽略大小写,如果不加“i”也就不需要“%”了
------其他解决方案--------------------
引用:
引用:%只是正则的开始与结束符,你用/,#都可以的正则的开始和结束不是^$第一次听说,受教……
你讲的是位置匹配,跟我讲的不是一件事情
------其他解决方案-------------------- %只是正则的开始与结束符,你用/,#都可以的
------其他解决方案--------------------
引用:
%只是正则的开始与结束符,你用/,#都可以的
正则的开始和结束不是^$第一次听说,受教……
------其他解决方案-------------------- 学习了,不上很明白。。
------其他解决方案-------------------- 上面写错了,"."可以匹配中文
------其他解决方案-------------------- 这个问题主要把正则运用好,就可以出来了.
------其他解决方案-------------------- 能告诉我为什么要加%吗?
------其他解决方案-------------------- 该回复于2012-11-19 17:27:11被管理员删除
Stellungnahme: Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn