Hmm, just thinking. I could split the value on spaces. Then I can say: +TEST:Microsoft +TEST:[Belgium TO Spain]
I just tested it, and it seems to work :-) ... 2012/8/20 Jochen Hebbrecht <jochenhebbre...@gmail.com> > Hi Ian, > > Thanks for your answer! > Well, my example might have been not so clear. Here's a better example: > > Doc 01: TEST: "Microsoft Belgium" > Doc 02: TEST: "Apple" > Doc 03: TEST: "Microsoft France" > Doc 04: TEST: "Evian" > Doc 05: TEST: "Nokia" > Doc 06: TEST: "Novotel" > Doc 07: TEST: "Microsoft Germany" > Doc 08: TEST: "Microsoft Spain" > > > Now, I want to search for all documents which have the field TEST going > from "Microsoft Belgium" to "Microsoft Spain". > The problem is, I cannot search on multiple terms in a range :-( ... > > What I can do, is to search from "Microsoft" to "Microsoft", this one > works. But not the one stated above ... > So the question is: can Lucene make a String range query on multiple terms? > > Kind regards, > Jochen > > > 2012/8/20 Ian Lea <ian....@gmail.com> > >> This won't work with TermRangeQuery because neither "test 1" not "test >> 3" are terms. "test" will be a term, output by the analyzer. You'll >> be able to see the indexed terms in Luke. >> >> Sounds very flaky anyway - you'd get "term 10 xxx" and "term 100 xxx" >> as well as "term 1" and "term 2". If your TEST values are that >> predictable you could split them up and index the number separately, >> maybe using NumericField and build a query using NumericRangeQuery. >> >> RegexQuery in contrib-queries might also be worth a look. >> >> >> -- >> Ian. >> >> On Mon, Aug 20, 2012 at 12:59 PM, Jochen Hebbrecht >> <jochenhebbre...@gmail.com> wrote: >> > Hi, >> > >> > I have 5 documents. Each document has a field TEST. Total structure is >> > looking like this: >> > >> > Doc 01: TEST: "test 1 string" >> > Doc 02: TEST: "test 2 string" >> > Doc 03: TEST: "test 3 string" >> > Doc 04: TEST: "test 4 string" >> > Doc 05: TEST: "test 5 string" >> > >> > These fields are indexed as Index.Analyzed with the StandardAnalyzer. >> > With Luke, I can see for example: >> > >> > Document: Doc 01 >> > Field: TEST >> > Terms: test, 1, string >> > >> > But now I want to make rangesearch as: >> > >> > << >> > new TermRangeQuery("TEST", "test 1", "test 3", true, true); >> >>> >> > >> > ... to pickup the first 3 documents. Unfortunately, this doesn't seem to >> > work for multiple words. >> > >> > Can somebody help me correcting my TermRangeQuery? >> > >> > Thanks! >> > Jochen >> >> --------------------------------------------------------------------- >> To unsubscribe, e-mail: java-user-unsubscr...@lucene.apache.org >> For additional commands, e-mail: java-user-h...@lucene.apache.org >> >> >