2

正确的家伙,

我在 PHP 中寻找一种方法来检测页面源代码中是否存在 Google Analytics,通过以下方式检索页面源代码:file_get_contents($url)

我知道页面上使用的分析代码应该是 UA-xxxxxxxx-x 格式

到目前为止,我尝试过:

return preg_match("/^ua-\d{4,9}-\d{1,4}$/i", strval($source)) ? true : false;

if(preg_match("/^ua-\d{4,9}-\d{1,4}$/", $source)){

if(strpos($source, "setAccount','UA-")!=''){

if(strpos($source, 'urchin.js')!=''){

不是最好的方法,每次它返回false。

任何帮助都会很棒..

[[ UPDATE ]] 好的,所以我已经搞砸了 preg_match 很多,(非常令人沮丧),在尝试了一些事情之后,我发现唯一可以匹配的是

if ( preg_match("/\bUA-\b/i", $source) ){
    echo "A match was found.";
} else {
    echo "A match was not found.";
}

这将与 Google Analytics 代码中的 UA- 匹配。但为了更好地匹配,我认为它需要在表达式中添加一些东西。

真正需要的是匹配第一部分 UA- 然后匹配一系列数字,即:UA-{range of numbers like 32692708}-{then just 1 number}

如果有人可以向我展示所需表达的预览,那就太好了.. :)

4

1 回答 1

0

您已关闭(preg_match("/^ua-\d{4,9}-\d{1,4}$/", $source),只需更改^$使用单词边界\b

(preg_match("/\bua-\d{4,9}-\d{1,4}\b/i", $source)
//     here __^^       and here __^^
于 2013-04-30T14:27:04.680 回答