Edismax パーサーを使用して、Solr テキスト フィールドにアスタリスク/クエリ マークを含むドキュメントを検索しようとしています。通常のテキスト ( ) を検索したり、エスケープ ( ) を使用してfq={!edismax}textfield:*sometext*
その他の特別な Lucene 文字を検索したりすると、すべてが完全に機能しますfq={!edismax}textfield:*\~*
。
*
ただし、 ( fq={!edismax}textfield:*\**
) または?
( )を検索するfq={!edismax}textfield:*\?*
と、すべてのドキュメントが返されるため、これらの文字はエスケープされないようです。エスケープ文字のURL エンコーディングも試してみましたが (\%2A
代わりに のように\*
)、結果は同じです。
とは正しい結果を返しますが、fq={!edismax}textfield:\**
とは返さないため、問題は主要なワイルドカードのみに関係しているように見えます (同様に)。fq={!edismax}textfield:\?*
fq={!edismax}textfield:*\*
fq={!edismax}textfield:*\?
fq={!edismax}textfield:*sometext\*
先行するアスタリスク ワイルドカードを使用して Edismax を検索*
/使用するにはどうすればよいですか??