Lucene を使用してデータベース内の名前を検索しようとしています。ただし、一部の名前には「NOT」や「OR」、さらには「-」などのマイナス記号が含まれています。名前内のさまざまなトークンをアナライザーを使用して分割し、用語のブール組み合わせとして検索したいのですが、Lucene に「NOT」/「OR」用語を演算子として解釈させたくありません (代わりに、通常の用語と同じように検索してほしい)。
私が話していることを達成する 1 つの方法は、検索クエリでアナライザーを手動で実行し、結果のすべてのトークンに基づいてブールクエリを手動で作成することです。これが最善の方法ですか?アナライザーはクエリパーサーと組み合わせて使用するように設計されているという印象を受け、私がやろうとしていることを達成するための組み込みの方法があるべきだと感じています。これを行う最良の方法を知っている人はいますか?