4

Android アプリケーションにインテント フィルターを追加しています。 http://www.somedomain.com/[numericValue]へのリクエストをキャッチしたいと考えています。パスが数値の場合にのみキャッチしたいのですが、テキストが含まれている場合は気にしません。

[0123456789]* の pathPattern を試しましたが、うまくいきませんでした。これは可能ですか?

4

2 に答える 2

2

これpathPatternは完全な正規表現ではありません。むしろ、「単純なグロブ」を使用します。これは、*直前の文字が0個以上(この場合は0個以上)であることを意味します]

頭のてっぺんから、希望のパターンを「単純なグロブ」に簡単に一致するものに変換する方法がわかりません。

于 2010-09-03T21:00:25.047 に答える
0

KTibow サンプルをテストしましたが、うまくいきません。

しかし、それをハッキングする方法は、複数のデータ要素を追加してこのように解決できることです。そのため、数値で始まるすべてのケースを取得できます。これは完全ではありませんが、ドキュメントに基づく唯一のオプションのように思われ、テスト時に何らかの理由で /1 と /01 にしか一致しないため、/0*1* のようなことはできないようです。

 <data
    android:host="example.com"
    android:pathPattern="/0.*"
    android:scheme="https" />
<data
    android:host="example.com"
    android:pathPattern="/1.*"
    android:scheme="https" />
<data
    android:host="example.com"
    android:pathPattern="/2.*"
    android:scheme="https" />
<data
    android:host="example.com"
    android:pathPattern="/3.*"
    android:scheme="https" />
<data
    android:host="example.com"
    android:pathPattern="/4.*"
    android:scheme="https" />
<data
    android:host="example.com"
    android:pathPattern="/5.*"
    android:scheme="https" />
<data
    android:host="example.com"
    android:pathPattern="/6.*"
    android:scheme="https" />
<data
    android:host="example.com"
    android:pathPattern="/7.*"
    android:scheme="https" />
<data
    android:host="example.com"
    android:pathPattern="/8.*"
    android:scheme="https" />
<data
    android:host="example.com"
    android:pathPattern="/9.*"
    android:scheme="https" />
于 2021-03-19T10:28:27.867 に答える