こんにちは、この質問の言い方がわからないので、例を挙げてみます。
私の検索用語が次のとおりであると仮定します。PHP/MYSQL
そして、「生の」コンテンツが次の6つのドキュメントをインデックスに持っています:
1: PHP MYSQL
2: PHP/MYSQL
3: PHP
4: MYSQL
5: PHP some stuff here and then MYSQL
6: weirdos may enter stuff like PHPMYSQL
このクエリが検索することを期待しているのは"PHP MYSQL" OR (PHP AND MYSQL)
、ドキュメント 1、2 (スラッシュはインデックス作成時に取り除かれます)、5、および 6 です。
solr.WordDelimiterFilterFactory をさまざまなオプションで試しましたが、クエリアナライザーで手動で実行しようとしました。
<filter class="solr.PatternReplaceFilterFactory"
pattern="(\S+)[\.\\;,\/:!\?]+(\S+)"
replacement="$1$2 || $1 && $2"
replace="all"
/>
「&&」または「||」をsolrに認識させることができません この段階では。
この動作を実現するためのフィルターの組み合わせを提案できる人はいますか?
SOLR のバージョンは 3.5 です