我正在Power应用程序中创建一个UTM生成器。我必须从用户可以粘贴到URL输入的URL中删除查询字符串(utm_source, utm_medium和utm_campaign)。另外,我必须保留其余的值,如utm_test
例如- from URL:www.testpage.html ? utm_source = empsig_12& utm_medium = email& utm_campaign = aw_e_be + dk_agc_test& utm_test =测试
我想得到这样的URL:
www.testpage.html ? utm_test =测试
现在我有这样的东西:
Match(txt_URL.Text, "(utm_source)=([^&#]*&?)|(utm_medium)=([^&#]*&?)|(utm_campaign)=([^&#]*&?)").FullMatch
但是它只返回第一个匹配-utm_source=empsig_12&
thanks in advance
您可以先使用MatchAll
,然后使用Concat
匹配:
Concat(
MatchAll(txt_URL.Text, "(utm_(?:campaign|source|medium))=([^&#]*&?)"),
FullMatch,
""
)
正则表达式匹配
(utm_(?:campaign|source|medium))
-组1:utm_
,然后campaign
,source
或medium
=
- a=
char([^&#]*&?)
-组2:除&
和#
之外的零个或多个字符,然后是可选的&
。