我正在使用
preg_match("/\<title\>(.*)\<\/title\>/i",$str,$title);
获取
<title>Exapmle</title>
如何使用preg_match获取此内容?
<title id="ANY_ID">Exapmle</title>
我用它来获取页面标题。也许,一个标题可以超过'id' 在回答时,请记住这一点。
<小时/> 好。这是获取页面标题的完整代码。希望它能帮助他人。
function get_title($url){
$str = file_get_contents($url);
$str = trim(preg_replace('/\s+/', ' ', $str));
// supports line breaks inside <title>
$match = preg_match("/\<title(.*)\>(.*)\<\/title\>/i",$str,$title);
// tries to catch if the title has an id or more
// if first prag_match gets an error
// (that means the title tag has no id or more)
// it tries to get title without id or more
if ($match === false)
{
preg_match("/\<title\>(.*)\<\/title\>/i",$str,$title);
}
return $title[1];
}
答案 0 :(得分:0)
您可以添加与任何字符匹配的(.*)
。请注意,$title
的最后一个元素是您的标题
preg_match("/\<title(.*)\>(.*)\<\/title\>/i",$str,$title);