获取网页标题正则表达式

时间:2016-04-07 22:32:19

标签: regex preg-match

我对正则表达式不好;

我正在尝试阅读网页标题。我遇到了一些包含<title itemprop="name">test - Google+</title><title id="name">Safaricom - Google+</title>

等结构的网页

当我尝试用下面的代码阅读它时,我得到了无标题,我该如何解决这个问题。

$header_data = Array(); 
if (preg_match("@<title *>(.*?)<\/title*>@si", $file, $header_data)) {
        $title = trim($header_data[1]);
}

1 个答案:

答案 0 :(得分:0)

这里的问题是使用*

  • 表示前面的正则表达式/字符可以出现0次或多次

所以这是试图多次匹配一个空格,并且只允许在标题之后和&gt;

之间留出空格

<title.*>(.*?)<\/title>