在PHP中从preg_match_all中返回的值
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了在PHP中从preg_match_all中返回的值相关的知识,希望对你有一定的参考价值。
我正在创建一个函数,从网站的页面源返回UA代码(来自Google Analytics)。
我创建了一个regex:'[U][A]-d{5,10}-d{0,2}]'用于UA代码。
我使用了preg_match_all,但似乎没有得到任何回报,而我知道我使用的网站至少有一个UA代码。
这是我目前所写的。
<?php
$url = 'www.ibood.com/nl/nl/';
$options = [
CURLOPT_RETURNTRANSFER => TRUE,
CURLOPT_FOLLOWLOCATION => TRUE,
CURLOPT_MAXREDIRS => 3
];
$init = curl_init($url);
curl_setopt_array($init, $options);
$site = curl_exec($init);
preg_match_all('/[U][A]-d{5,10}-d{0,2}]/', $site, $matches);
print $matches[0][0];
我只是得到一个白屏。
我在这里可能做错了什么?
答案
使用这个RegEx /[U][A]-d{5,10}-d{0,2}/
你的regex中多了一个钩子:) 之前。https:/regex101.comrDDdJhA1。 后。https:/regex101.comrUPA2iZ1
另一答案
你可以试试这个。
/[U][A]-([0-9]{5,10})-([0-9]{0,2})+/
总是尝试获取您想要解析的响应的样本片段,并使用诸如 https:/regexr.com
以上是关于在PHP中从preg_match_all中返回的值的主要内容,如果未能解决你的问题,请参考以下文章