我想识别不同的urls,并使用特定的活动打开它。
我在清单中声明意图筛选器,如果我使用简单的条件,它就能工作:
<data
android:host="www.myhost.fr"
android:pathPattern="/.*\\.shtml"
android:scheme="http" />如果我想区分像“故事”和“视频”这样的关键词,我会像这样改变我的pathPattern。
活动故事:
<data
android:host="www.myhost.fr"
android:pathPattern="/.*story\\.shtml"
android:scheme="http" />活动录像:
<data
android:host="www.myhost.fr"
android:pathPattern="/.*video\\.shtml"
android:scheme="http" />编辑我试图拦截的Urls:
ID位于"/“之前,用于故事和视频。对于比赛,它是不同的。
当我测试这个解决方案时,模式是不被识别的。如果我在网上的regex里测试它,它会说它是正确的。
知道吗?
发布于 2014-01-21 14:48:32
您想要捕获ID和包含.shtml的特定单词吗?
我试过:
((\d+)/(story\.shtml|video\.shtml))|(match_mtc(\d+)\.shtml)如果是故事或视频,则可以分组捕获ID和关键字,如果是"match_mtc“,则只捕获ID。
您可能需要加倍转义regex for Java中的字符,如下所示:
((\\d+)/(story\\.shtml|video\\.shtml))|(match_mtc(\\d+)\\.shtml)然后,您可以使用$1、$2、.、$n调用组,并获取所需的特定字符串。
https://stackoverflow.com/questions/21114838
复制相似问题