Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- IndexReader reader = DirectoryReader.open(FSDirectory.open(new File(
- indexLocation)));
- IndexSearcher searcher = new IndexSearcher(reader);
- s = "";
- while (!s.equalsIgnoreCase("q")) {
- TopScoreDocCollector collector = TopScoreDocCollector.create(100, true);
- try {
- System.out.println("Enter the search query (q=quit):");
- s = br.readLine();
- if (s.equalsIgnoreCase("q")) {
- break;
- }
- Query q = new QueryParser(Version.LUCENE_47, "contents", analyzer).parse(s);
- searcher.search(q, collector);
- ScoreDoc[] hits = collector.topDocs().scoreDocs;
- // 4. display results
- System.out.println("Found " + hits.length + " hits.");
- for (int i = 0; i < hits.length; ++i) {
- int docId = hits[i].doc;
- Document d = searcher.doc(docId);
- System.out.println((i + 1) + ". " + d.get("path")
- + " score=" + hits[i].score);
- }
- // 5. term stats --> watch out for which "version" of the term
- // must be checked here instead!
- Term termInstance = new Term("contents", s);
- long termFreq = reader.totalTermFreq(termInstance);
- long docCount = reader.docFreq(termInstance);
- System.out.println(s + " Term Frequency " + termFreq
- + " - Document Frequency " + docCount);
- } catch (Exception e) {
- System.out.println("Error searching " + s + " : "
- + e.getMessage());
- break;
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment