Hi, It is not the problem with case..Because Iam using LowercaseFilter.
My Analyzer is a custom analyzer which will ignore just white spaces.All other numbers date and other special characters it will consider.The Same analyzer works for Lucene 3.6. When i do a single term query for "Geoffrey" it is giving hits..But when given as a part of multiphrase query ,it is not able to find..When the below code is Executed with say word ="Geoffrey",it is not finding the word itself .. if(TermsEnum.SeekStatus.FOUND ==trm.seekCeil(new BytesRef(word))) { do { String s = trm.term().utf8ToString(); if (s.equals(word)) { termsWithPrefix.add(new Term("content", s)); } else { break; } } while (trm.next() != null); } On Mon, Sep 30, 2013 at 3:01 PM, Ian Lea <ian....@gmail.com> wrote: > Whenever someone says something along the lines of a search for > "geoffrey" not matching "Geoffrey" the case difference springs out, > Can't recall what if anything you said about the analysis side of > things but that could be the cause. See > > http://wiki.apache.org/lucene-java/LuceneFAQ#Why_am_I_getting_no_hits_.2F_incorrect_hits.3F > > If on the other hand the problem is more obscure, and only related to > the multi phrase stuff, I suggest you build a tiny but complete > RAMDirectory based program or test case that shows the problem and > post it here. > > > -- > Ian. > > > > On Mon, Sep 30, 2013 at 6:46 AM, VIGNESH S <vigneshkln...@gmail.com> > wrote: > > Hi, > > > > Thanks for your Reply.The Problem I face is there is a word called > Geoffrey > > Romer in my Field. > > > > I am Forming a Multiphrase query object properly like " Geoffrey > Romer".But > > When i do a Search,it is not returning Hits.This Problem I am facing is > not > > for all phrases > > This Problem happens for only few Phrases. > > > > When i do a single query like Geoffrey it is giving a Hit..But when i do > it > > in MultiphraseQuery it is not able to find "geoffrey". I confirmed this > by > > doing trm.seekCeil(new BytesRef("Geoffrey")) and then and then when i > > do String s = trm.term().utf8ToString().It is pointing to a diffrent word > > instead of geoffrey.seekceil is working properly for many phrases though. > > > > What could be the problem..please kindly suggest. > > > > > > > > On Fri, Sep 27, 2013 at 6:58 PM, Allison, Timothy B. <talli...@mitre.org > >wrote: > > > >> 1) An alternate method to your original question would be to do > something > >> like this (I haven't compiled or tested this!): > >> > >> Query q = new PrefixQuery(new Term("field", "app")); > >> > >> q = q.rewrite(indexReader) ; > >> Set<Term> terms = new HashSet<Term>(); > >> q.extractTerms(terms); > >> Term[] arr = terms.toArray(new Term[terms.size()]); > >> MultiPhraseQuery mpq = new MultiPhraseQuery(); > >> mpq.add(new Term("field", "microsoft"); > >> mpq.add(arr); > >> > >> > >> 2) At a higher level, do you need to generate your query > programmatically? > >> Here are three parsers that could handle this: > >> a) ComplexPhraseQueryParser > >> b) SurroundQueryParser: oal.queryparser.surround.parser.QueryParser > >> c) experimental: <self_promotion degree="shameless"> > >> http://issues.apache.org/jira/browse/LUCENE-5205</self_promotion> > >> > >> > >> -----Original Message----- > >> From: VIGNESH S [mailto:vigneshkln...@gmail.com] > >> Sent: Friday, September 27, 2013 3:33 AM > >> To: java-user@lucene.apache.org > >> Subject: Re: Multiphrase Query in Lucene 4.3 > >> > >> Hi, > >> > >> The word i am giving is "Romer Geoffrey ".The Word is in the Field. > >> > >> trm.seekCeil(new BytesRef("Geoffrey")) and then when i do String s = > >> trm.term().utf8ToString(); and hence > >> > >> It is giving a diffrent word..I think this is why my multiphrasequery is > >> not giving desired results. > >> > >> What may be the reason.. > >> > >> > >> > >> > >> On Fri, Sep 27, 2013 at 11:49 AM, VIGNESH S <vigneshkln...@gmail.com> > >> wrote: > >> > >> > Hi Lan, > >> > > >> > Thanks for your Reply. > >> > > >> > I am doing similar to this only..In MultiPhraseQuery object actual > phrase > >> > is going proper but it is not returning any hits.. > >> > > >> > In Lucene 3.6,I implemented the same logic and it is working. > >> > > >> > In Lucene 4.3,I implemented the Index for that using > >> > > >> > FieldType offsetsType = new FieldType(TextField.TYPE_STORED); > >> > > >> > > >> > > offsetsType.setIndexOptions(IndexOptions.DOCS_AND_FREQS_AND_POSITIONS_AND_OFFSETS); > >> > > >> > For MultiphraseQuery, whether I need to add any other parameter in > >> > addition to this while indexing? > >> > > >> > Is there any MultiPhraseQueryTest java file for Lucene 4.3? I checked > in > >> > Lucene branch and i was not able to find..Please kindly help. > >> > > >> > > >> > > >> > > >> > > >> > > >> > On Thu, Sep 26, 2013 at 2:55 PM, Ian Lea <ian....@gmail.com> wrote: > >> > > >> >> I use the code below to do something like this. Not exactly what you > >> >> want but should be easy to adapt. > >> >> > >> >> > >> >> public List<String> findTerms(IndexReader _reader, > >> >> String _field) throws IOException { > >> >> List<String> l = new ArrayList<String>(); > >> >> Fields ff = MultiFields.getFields(_reader); > >> >> Terms trms = ff.terms(_field); > >> >> TermsEnum te = trms.iterator(null); > >> >> BytesRef br; > >> >> while ((br = te.next()) != null) { > >> >> l.add(br.utf8ToString()); > >> >> } > >> >> return l; > >> >> } > >> >> > >> >> -- > >> >> Ian. > >> >> > >> >> On Wed, Sep 25, 2013 at 3:04 PM, VIGNESH S <vigneshkln...@gmail.com> > >> >> wrote: > >> >> > Hi, > >> >> > > >> >> > In the Example of Multiphrase Query it is mentioned > >> >> > > >> >> > "To use this class, to search for the phrase "Microsoft app*" first > >> use > >> >> > add(Term) on the term "Microsoft", then find all terms that have > "app" > >> >> as > >> >> > prefix using IndexReader.terms(Term), and use > >> >> MultiPhraseQuery.add(Term[] > >> >> > terms) to add them to the query" > >> >> > > >> >> > > >> >> > How can i replicate the Same in Lucene 4.3 since > >> >> IndexReader.terms(Term) is > >> >> > no more used > >> >> > > >> >> > -- > >> >> > Thanks and Regards > >> >> > Vignesh Srinivasan > >> >> > >> >> --------------------------------------------------------------------- > >> >> To unsubscribe, e-mail: java-user-unsubscr...@lucene.apache.org > >> >> For additional commands, e-mail: java-user-h...@lucene.apache.org > >> >> > >> >> > >> > > >> > > >> > -- > >> > Thanks and Regards > >> > Vignesh Srinivasan > >> > 9739135640 > >> > > >> > >> > >> > >> -- > >> Thanks and Regards > >> Vignesh Srinivasan > >> 9739135640 > >> > >> --------------------------------------------------------------------- > >> To unsubscribe, e-mail: java-user-unsubscr...@lucene.apache.org > >> For additional commands, e-mail: java-user-h...@lucene.apache.org > >> > >> > > > > > > -- > > Thanks and Regards > > Vignesh Srinivasan > > 9739135640 > > --------------------------------------------------------------------- > To unsubscribe, e-mail: java-user-unsubscr...@lucene.apache.org > For additional commands, e-mail: java-user-h...@lucene.apache.org > > -- Thanks and Regards Vignesh Srinivasan 9739135640