私が取り組んでいるアプリケーションは、solrを使ってエントリを索引付けして検索します。私はロジックとシンタックスについての情報を読んできました。現在、私には混乱しているコードがいくつかあります。このコードを書いた人が、した。Solrクエリ:空白を置き換える+
trimmedSearchField = SolrQueryUtil.escapeQueryString(trimmedSearchField).replaceAll("\\s+", "+");
String qString = "+(title:" + trimmedSearchField + "^100 OR description_t:" + trimmedSearchField + "^10 " +
"OR +" + trimmedSearchField +"^1)";
私はちょうど.replaceAllメソッドに注意を払いたいと思っていますが、なぜ+で空白を置き換えたいのでしょうか?私の目標は、少しの検索バーをリファクタリングすることです。replaceAllコールを排除してより良い結果を得ることができます。
例:「Helen of Troy」と「Helen from Troy」の2つの要素。 replaceAllが存在すると、 "Helen of Troy"を検索するとreplaceAllが削除された最初の要素のみが表示されます(どちらも出現したい)
問題は、これがURLを通過していないことです。それはsolrjに渡されています。そして今、すべての単語にブール演算子が追加されています。 – user3221287
duh、編集済みの回答 – Persimmonium