Lucene-query-programming

提供:Dev Guides
移動先:案内検索

Lucene-クエリプログラミング

前の章* Lucene-検索操作*で見てきましたが、LuceneはIndexSearcherを使用して検索を行い、QueryParserによって作成されたQueryオブジェクトを入力として使用します。 この章では、さまざまな種類のQueryオブジェクトと、それらをプログラムで作成するさまざまな方法について説明します。 さまざまなタイプのQueryオブジェクトを作成すると、実行する検索の種類を制御できます。

ユーザーに検索結果を制限するための複数のオプションが与えられる多くのアプリケーションによって提供される高度な検索の場合を考えてみましょう。 クエリプログラミングにより、同じことが非常に簡単に実現できます。

以下は、やがて議論するクエリの種類のリストです。

S.No. Class & Description
1

TermQuery

このクラスは、インデックス作成プロセス中にインデックスを作成/更新するコアコンポーネントとして機能します。

2

TermRangeQuery

TermRangeQueryは、テキスト用語の範囲を検索するときに使用されます。

3

PrefixQuery

PrefixQueryは、インデックスが指定された文字列で始まるドキュメントを照合するために使用されます。

4

BooleanQuery

BooleanQueryは、 AND、OR 、または NOT 演算子を使用した複数のクエリの結果であるドキュメントの検索に使用されます。

5

PhraseQuery

フレーズクエリは、特定の用語のシーケンスを含むドキュメントを検索するために使用されます。

6

WildCardQuery

WildcardQueryは、任意の文字シーケンスに「*」などのワイルドカードを使用してドキュメントを検索するために使用されますか? 単一の文字に一致します。

7

FuzzyQuery

FuzzyQueryは、編集距離アルゴリズムに基づいた近似検索であるファジー実装を使用してドキュメントを検索するために使用されます。

8

MatchAllDocsQuery

名前が示すとおり、MatchAllDocsQueryはすべてのドキュメントに一致します。