1
これは単純なはずですが、LuceneにAND、OR、およびNOTキーワードを無視させる方法を見つけることができません - クエリパーサーは、解析エラーをスローします。私は、単語をnグラムだけでなく単語自体でも検索できるように、検索用語を分割するクエリビルダークラスを用意しています。私はJavaでLuceneを使用しています。それは、それらの論理積を取得するときに、クエリのパーサがエラーをスローLuceneは検索キーワードのキーワードを無視します
name: (ANDERSON COOPER "ANDERSON COOPER")^5 gram4: (ANDE NDER DERS ERSO RSON
SONC ONCO NCOO COOP OOPE OPER)
:よう
はそう言って、の検索で、「アンダーソン・クーパーは、」クエリ文字列が見えます。理想的には、パーサーがAND、ORを無視するだけでいいのですが、& &、||、および!を使用します。私がそれらを必要とする場合、それを取得するためにQueryParserクラス自体のコードを変更する必要がありますか?それとも簡単な方法がありますか?また、これが最善の方法である場合はエスケープ文字を挿入することもできますが、単語の前に\
を追加しても何もしないようです。
に置き換えられる
を!私は引用符で名前をラップしようとしましたが、それぞれのn-gramも引用符で囲む必要があります。私が望むほど簡単な解決策について。 – danny