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

Reply via email to