I suspect it is because QueryParser uses space characters to separate different clauses in a query string while you want the space to represent some content in your "name" field. Try escaping the space character.
Cheers Mark On 9 Feb 2010, at 07:26, Rohit Banga wrote: > Hello > > i have a field that stores names of people. i have used the NOT_ANALYZED > parameter to index the names. > > this is what happens during indexing > > doc.add(new Field("name", "\"" + name + "\"", Field.Store.YES, > Field.Index.NOT_ANALYZED)); > > > > when i search it, i create a query parser using standardanalyzer and append > ~0.5 to the search query. > > the problem is that if the indexed name is "Mr. Kumar", my search does not > work for "Mr. Kumar" while it does work for "Mr.Kumar" (without the space). > > // searching code > File index_directory = new File(INDEX_DIR_PATH); > IndexReader reader = > IndexReader.open(FSDirectory.open(index_directory), true); > Searcher searcher = new IndexSearcher(reader); > > Analyzer analyzer = new StandardAnalyzer(Version.LUCENE_CURRENT); > > QueryParser parser = new QueryParser(Version.LUCENE_CURRENT, "name", > analyzer); > > Query query; > query = parser.parse(text + "~0.5"); > > how to make it work? > > Rohit Banga --------------------------------------------------------------------- To unsubscribe, e-mail: java-user-unsubscr...@lucene.apache.org For additional commands, e-mail: java-user-h...@lucene.apache.org