Android アプリケーションにインテント フィルターを追加しています。 http://www.somedomain.com/[numericValue]へのリクエストをキャッチしたいと考えています。パスが数値の場合にのみキャッチしたいのですが、テキストが含まれている場合は気にしません。
[0123456789]* の pathPattern を試しましたが、うまくいきませんでした。これは可能ですか?
Android アプリケーションにインテント フィルターを追加しています。 http://www.somedomain.com/[numericValue]へのリクエストをキャッチしたいと考えています。パスが数値の場合にのみキャッチしたいのですが、テキストが含まれている場合は気にしません。
[0123456789]* の pathPattern を試しましたが、うまくいきませんでした。これは可能ですか?
これpathPattern
は完全な正規表現ではありません。むしろ、「単純なグロブ」を使用します。これは、*
直前の文字が0個以上(この場合は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" />