我尝试向此请求添加正则表达式过滤器,但我没有找到使用过滤器的示例文档:Filter\StringFilter\MatchType::FULL_REGEXP。
我没有错误,但也没有结果。我哪里做错了? 在这里,我尝试获取主机名是站点且 pageReferrer 以 https:// 开头的结果。
$request = $client->runReport([
'property' => 'properties/' . $property_id,
'dateRanges' => [
new DateRange([
'start_date' => "$dateStart",
'end_date' => "$dateEnd",
]),
],
'dimensions' => [
new Dimension(['name' => 'hostName']),
new Dimension(['name' => 'pageReferrer']),
],
'metrics' => [
new Metric(['name' => 'sessions']),
],
'dimensionFilter' => new FilterExpression([
'and_group' => new FilterExpressionList([
'expressions' => [
new FilterExpression([
'filter' => new Filter([
'field_name' => 'hostName',
'string_filter' => new Filter\StringFilter([
'match_type' => Filter\StringFilter\MatchType::FULL_REGEXP,
**'value' => 'hostName==www.site.com',**
])
]),
]),
new FilterExpression([
'filter' => new Filter([
'field_name' => 'pageReferrer',
'string_filter' => new Filter\StringFilter([
'match_type' => Filter\StringFilter\MatchType::FULL_REGEXP,
**'value' => 'pageReferrer!~^https:\/\/*',**
])
]),
]),
]
]),
]),
]);
我仍然链接了我找到的有关此 API 的文档和示例:
这是我的第一篇文章,所以请原谅格式错误。
我同意另一位发帖者的评论“GA4 文档中显然缺乏示例。”可笑的是,GA4 Data API v1 尚未准备好用于商业用途,这与 Google 于 7 月 1 日停止通用分析的承诺完全背道而驰。他们的文档中缺乏示例可能是最令人震惊的差距。
Soapbox 收起......当您指定 FULL_REGEXP 时,“value”键旨在保存正则表达式,而不是正则表达式评估。因此,您的过滤器定义将是:
new FilterExpression([
'filter' => new Filter([
'field_name' => 'hostName',
'string_filter' => new Filter\StringFilter([
'match_type' => Filter\StringFilter\MatchType::FULL_REGEXP,
'value' => 'www\.site\.com',
])
]),
]),
GA4 文档中明显缺乏示例。
尝试转义第一个过滤器中的符号。 也许 PARTIAL_REGEXP 可以帮助测试。