From java-user-return-19949-apmail-lucene-java-user-archive=lucene.apache.org@lucene.apache.org Tue Apr 04 13:10:37 2006 Return-Path: Delivered-To: apmail-lucene-java-user-archive@www.apache.org Received: (qmail 13892 invoked from network); 4 Apr 2006 13:10:37 -0000 Received: from hermes.apache.org (HELO mail.apache.org) (209.237.227.199) by minotaur.apache.org with SMTP; 4 Apr 2006 13:10:37 -0000 Received: (qmail 50460 invoked by uid 500); 4 Apr 2006 13:10:30 -0000 Delivered-To: apmail-lucene-java-user-archive@lucene.apache.org Received: (qmail 50435 invoked by uid 500); 4 Apr 2006 13:10:29 -0000 Mailing-List: contact java-user-help@lucene.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: java-user@lucene.apache.org Delivered-To: mailing list java-user@lucene.apache.org Received: (qmail 50424 invoked by uid 99); 4 Apr 2006 13:10:29 -0000 Received: from asf.osuosl.org (HELO asf.osuosl.org) (140.211.166.49) by apache.org (qpsmtpd/0.29) with ESMTP; Tue, 04 Apr 2006 06:10:29 -0700 X-ASF-Spam-Status: No, hits=-0.0 required=10.0 tests=SPF_HELO_PASS,SPF_PASS X-Spam-Check-By: apache.org Received-SPF: pass (asf.osuosl.org: domain of lists@nabble.com designates 72.21.53.35 as permitted sender) Received: from [72.21.53.35] (HELO talk.nabble.com) (72.21.53.35) by apache.org (qpsmtpd/0.29) with ESMTP; Tue, 04 Apr 2006 06:10:26 -0700 Received: from localhost ([127.0.0.1] helo=talk.nabble.com) by talk.nabble.com with esmtp (Exim 4.50) id 1FQlIM-0004sO-I8 for java-user@lucene.apache.org; Tue, 04 Apr 2006 06:10:06 -0700 Message-ID: <3743994.post@talk.nabble.com> Date: Tue, 4 Apr 2006 06:10:06 -0700 (PDT) From: Fisheye To: java-user@lucene.apache.org Subject: Re: highlighting - fuzzy search In-Reply-To: MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit X-Nabble-Sender: dessan@gmx.ch X-Nabble-From: Fisheye References: <3743436.post@talk.nabble.com> X-Virus-Checked: Checked by ClamAV on apache.org X-Spam-Rating: minotaur.apache.org 1.6.2 0/1000/N Ok, thanks Erik. So probably my code may explain it: ------------------------------------------------------------------------------------------------------------------------------- public void searchQuery(String q, float rel, String indexDir){ String excerpt = ""; try{ Searcher searcher = new IndexSearcher(indexDir); Analyzer analyzer = new StandardAnalyzer(); Term searchTerm = new Term("text", q); FuzzyQuery fuzzyQuery = new FuzzyQuery(searchTerm, rel/100); System.out.println("Searching for: " + q); Hits hits = searcher.search(fuzzyQuery); System.out.println(hits.length() + " total matching documents"); for (int i = 0; i < hits.length(); i++){ Document doc = hits.doc(i); String path = doc.get("path"); SearchTextHighlighter processText = new SearchTextHighlighter(); // excerpt = // processText.getExcerpt(doc.get("text"), q, fuzzyQuery); if (path != null){ System.out.println(i + ".-------"); System.out.println(" Path: " + path); System.out.println(" Score: " + hits.score(i)); System.out.println(" DocID: " + doc.get("docID")); System.out.println(" Snippet: " + excerpt); System.out.println(); }else{ String url = doc.get("url"); if (url != null){ System.out.println(i + ". " + url); System.out.println(" - " + doc.get("title")); System.out.println("Score: " + hits.score(i)); }else{ System.out.println(i + ". " + "No path nor URL for this document"); } } } searcher.close(); }catch (Exception e){ e.printStackTrace(); } } ------------------------------------------------------------------------------------------------------------------------------- Method getExcerpt does the following: ------------------------------------------------------------------------------------------------------------------------------- public String getExcerpt(String textToCompute, String queryText, Query query) { String excerpt = ""; String vTemp = ""; Analyzer analyzer = new StandardAnalyzer(); Highlighter highlighter = new Highlighter(new QueryScorer(query)); if(textToCompute != null ){ TokenStream tokenStream = analyzer.tokenStream("text", new StringReader(textToCompute)); try { vTemp = highlighter.getBestFragment(tokenStream, textToCompute); excerpt = vTemp.replaceAll("" + queryText + "", queryText); } catch (IOException ex) { } } return excerpt; } ------------------------------------------------------------------------------------------------------------------------------- -- View this message in context: http://www.nabble.com/highlighting---fuzzy-search-t1392775.html#a3743994 Sent from the Lucene - Java Users forum at Nabble.com. --------------------------------------------------------------------- To unsubscribe, e-mail: java-user-unsubscribe@lucene.apache.org For additional commands, e-mail: java-user-help@lucene.apache.org