You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Android:如何用正则配置pathAdvancedPattern不匹配/log/格式的DeepLink路径

Android DeepLink正则匹配排除/log/路径

需求场景

需要匹配的URL路径:

  • demo.com/logData1
  • demo.com/logSub2
  • 其他以/log开头但不是/log/的路径

不需要匹配的URL路径:

  • demo.com/log/

当前配置问题

当前Manifest中的data配置使用正则/log[^/].*,但仍会匹配/log/,无法满足需求:

<data
    android:host="@string/deeplink_host"
    android:pathAdvancedPattern="/log[^/].*"
    android:scheme="https" />

正确正则写法

使用负向前瞻断言来精准排除/log/的情况,正确的正则为/log(?!/).*,替换后的配置如下:

<data
    android:host="@string/deeplink_host"
    android:pathAdvancedPattern="/log(?!/).*"
    android:scheme="https" />

正则说明

  • (?!/)是负向前瞻断言,它会检查/log之后的字符不是/:
    • 若/log后紧跟/(即路径为/log/),断言不成立,整个正则不匹配;
    • 若/log后是其他任意字符(如logData1中的D),断言成立,后续的.*会匹配剩余的所有路径字符。

内容的提问来源于stack exchange,提问作者Sandiri

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.28 01:48:36