インデックスを検索する前に類似度を変更したい。私がすることは:
QueryParser parser = new QueryParser(Version.LUCENE_43, "field", standarAnalyzer);
System.out.println("similarity before: " + parser.getFuzzyMinSim());
parser.setFuzzyMinSim(0.6f);
System.out.println("similarity after: " + parser.getFuzzyMinSim());
Query query = parser.parse(inputString); // inputString is given by the user
System.out.println("Querystring: " + query.toString());
そして今、inputString = "something~" の場合、この出力が得られます
similarity before: 2.0
similarity after: 0.5
Querystring: field:something~2 // Why 2!?
私の質問:
- 類似度が最初に 2.0 に設定されているのはなぜですか (デフォルトでは 0.5 だと思っていました)。
- setFuzzyMinSim メソッドを呼び出した後も 2.0 のままなのはなぜですか?