when i m using normal tokenizers i m getting " track " as a result and not getting " 9 ".
and when i m using this custom analyser and checking the output , i m getting the right output as " track 9 ". but as soon as i use queryparser using the same custom analyser i get only " track " and not " 9 ". so i want to why queryparser is ommiting the single character in the string.. is there any threshhold in the queryparser or some minimum length which is not able to enter single character string in the queryparser. On 6/30/07, Erick Erickson <[EMAIL PROTECTED]> wrote:
Well, I'd suggest the first thing you do is remove your custom tokenizer and see what results you get with one of the normal parsers. Then creep up on your custom analyzer bit by bit. Otherwise, it's almost impossible to figure out what's going on except by setting breakpoints in your analyzer and inspecting. Best Erick On 6/29/07, pratik shinghal <[EMAIL PROTECTED]> wrote: > > On 6/29/07, Erick Erickson <[EMAIL PROTECTED]> wrote: > > > > What do you get if you do a > > System.out.println(que.toString())? > > > > And what analyzer are you using? > > > > Erick > > > > On 6/28/07, pratik shinghal <[EMAIL PROTECTED]> wrote: > > > > > > i m using lucene(org.apache.lucene) and i want the java code for > parsing > > > single character string.. > > > > > > my code is : > > > > > > QueryParser qp = new QueryParser("",analyser); > > > String str = " track 9"; > > > Query que = qp.parse(str); > > > System.out.println(que); > > > > > > and i want the answer as : track , 9 > > > > > > > > > but i m getting only "track" and not getting "9" . > > > so tell me which analyser & queryparser i should use and kindly give > me > > > the > > > java code for the same , as i m new to > > > lucene. > > > > > > -- > > > Pratik Shinghal > > > > > > > > the output of System.out.println(que.toString()) is "track". > i m using AlphanumericAnalyser which is the custom Analyser made by me. > the code of this analyser is as follows : > > * > > class* AlphanumericAnalyzer *extends* Analyzer { > > *public* *TokenStream* *tokenStream*(String *fieldName*, Reader reader) { > > *return* *new* CharTokenizer(reader) { > > *protected* *char* normalize(*char* c) { > > *return* Character.*toLowerCase*(c); > > } > > *protected* *boolean* isTokenChar(*char* c) { > > *return* Character.*isLetter*(c) || Character.*isDigit*(c); > > } > > }; > > } > > *}* > > > > > -- > Pratik Shinghal >
-- Pratik Shinghal