URL を処理する高性能アプリケーションがあります。すべての URL について、事前定義されたプールから適切な設定を取得する必要があります。すべての設定オブジェクトは、これらの設定を使用する URL を示す URL パターンに関連付けられています。一致ルールは次のとおりです。
- 「google.com」一致パターンは、google ドメインを指すすべての URL と一致する必要があります (したがって、maps.google.com と www.google.com/match が一致します)。
- 「*.google.com」は、google.com のサブドメインを指すすべての URL と一致する必要があります (したがって、maps.google.com は一致しますが、google.com と www.google.com は一致しません)。
- 「maps.google.com」は、この特定のサブドメインを指すすべての URL と一致する必要があります。
上記のルールとは別に、すべての一致ルールにはパスを含めることができます。つまり、URL のパス部分は一致ルールのパスで開始する必要があります。したがって、「*.google.com/maps」は「maps.google.com/maps」と一致しますが、「maps.google.com/advanced」とは一致しません。
ご覧のとおり、上記のルールは重複しています。同じ URL に一致する 2 つのルールが存在する場合、最も具体的なルールが適用されます。上記のリストは、最も具体的でないものから最も具体的なものの順にランク付けされています。
これは非常に標準的な問題であるように思われるため、自分でプログラムするのではなく、既製のライブラリを使用することを望んでいました。Google はいくつかのオプションを明らかにしていますが、それらを選択する明確な方法はありません。このタスクに適したライブラリとして何をお勧めしますか?
ありがとう、ボアズ