首页 > 解决方案 > 裁剪 PHP 字符串

问题描述

我将 URL 存储在一个名为$page的变量中。

我使用以下代码来获取utm_campaign值。

preg_match_all('#utm_campaign=([^\s]+)#', $page, $matches);
$utm_campaign = implode(' ', $matches[1]);

但是,我发现如果 URL 是www.site.com/?utm_campaign=test&utm_source=test它将设置$utm_campaign等于test&utm_source=test而不仅仅是test

如何修改上面的代码来解决这个问题?

标签: phpregex

解决方案


&后加一个\s

看:

#utm_campaign=([^\s&]+)#

正则表达式101


推荐阅读