Hello, I don't think # is supported in query parsers, although it would be great. So, far I saw them in only in toString().
On Fri, Dec 2, 2016 at 9:30 AM, Bouadjenek mohamed reda < [email protected]> wrote: > Hi All, > > > I wanna use a filter into a query (BooleanClause.Occur.FILTER). For > example, my query is: > > #repository:clinicaltrials +title:multipl > > It looks like when I build the query from this String, the filter is not > working. In other words, the total hits in the first example below is > different from total hits in the second example below. Please, does anyone > know what wrong with this simple example? > > Example 1: > String query = "#repository:clinicaltrials +title:multipl"; > QueryParser qr = new QueryParser("", new StandardAnalyzer()); > TopDocs hits = is.search(qr.parse(query), 1); > > Example 2: > String[] fields = new String[]{"repository", "title"}; > BooleanClause.Occur[] allflags = new > BooleanClause.Occur[]{BooleanClause.Occur.FILTER, > BooleanClause.Occur.MUST}; > String[] query_text = new String[]{"clinicaltrials", "multipl"}; > Query finalQuery = MultiFieldQueryParser.parse(query_text, fields, > allflags, new StandardAnalyzer()); > TopDocs hits = is.search(finalQuery, 1); > > > thanks, > > > Best, > reda > -- Sincerely yours Mikhail Khludnev
