1

Lucene でドキュメントのインデックスを作成しました。フィールドの 1 つに名前が付けられており、 を含むtitleすべてのドキュメントを検索したいと考えています。残念ながら、正確な結果しか得られません-タイトル付きのドキュメントを取得します(ただし、例ではありません)。titlewordwordmy word

コード:

    String field = "title";
    String value = "word"; 
    List<MyDoc> myDocList = new ArrayList<MyDoc>();
    Analyzer analyzer = new StandardAnalyzer(Version.LUCENE_45);
    QueryParser parser = new QueryParser(Version.LUCENE_45, field, analyzer);

         try {

             Query query = new TermQuery(new Term(field, value));
            int numResults = 100;
            ScoreDoc[] hits =   indexSearcher.search(query,numResults).scoreDocs;
            for (int i = 0; i < hits.length; i++) {
                 Document doc = indexSearcher.doc(hits[i].doc);
                 myDocList .add(getMyDoc(doc));
            }

         } catch (IOException e) {
             e.printStackTrace(); 
         }

         return myDocList ;
4

1 に答える 1