Lucene-query-programming
Lucene-クエリプログラミング
前の章* Lucene-検索操作*で見てきましたが、LuceneはIndexSearcherを使用して検索を行い、QueryParserによって作成されたQueryオブジェクトを入力として使用します。 この章では、さまざまな種類のQueryオブジェクトと、それらをプログラムで作成するさまざまな方法について説明します。 さまざまなタイプのQueryオブジェクトを作成すると、実行する検索の種類を制御できます。
ユーザーに検索結果を制限するための複数のオプションが与えられる多くのアプリケーションによって提供される高度な検索の場合を考えてみましょう。 クエリプログラミングにより、同じことが非常に簡単に実現できます。
以下は、やがて議論するクエリの種類のリストです。
S.No. | Class & Description |
---|---|
1 |
このクラスは、インデックス作成プロセス中にインデックスを作成/更新するコアコンポーネントとして機能します。 |
2 |
TermRangeQueryは、テキスト用語の範囲を検索するときに使用されます。 |
3 |
PrefixQueryは、インデックスが指定された文字列で始まるドキュメントを照合するために使用されます。 |
4 |
BooleanQueryは、 AND、OR 、または NOT 演算子を使用した複数のクエリの結果であるドキュメントの検索に使用されます。 |
5 |
フレーズクエリは、特定の用語のシーケンスを含むドキュメントを検索するために使用されます。 |
6 |
WildcardQueryは、任意の文字シーケンスに「*」などのワイルドカードを使用してドキュメントを検索するために使用されますか? 単一の文字に一致します。 |
7 |
FuzzyQueryは、編集距離アルゴリズムに基づいた近似検索であるファジー実装を使用してドキュメントを検索するために使用されます。 |
8 |
名前が示すとおり、MatchAllDocsQueryはすべてのドキュメントに一致します。 |