Do you want hits to contain the word "words" or not? You've got it in both clauses...

Also, "+(a b c)" requires that any of "a" "b" or "c" be in a document, but not necessarily all of them. If you want it to contain all of them then each term must be required, e.g., "+a +b +c". In the latest sources this can be achieved through the query parser with:
queryParser.setOperator(DEFAULT_OPERATOR_AND);

I'm not quite sure precisely what you're trying to do, so it's hard to tell you how to do it.

Doug

alex wrote:
thxs for your suggestion this is what i have written but it does not work
any suggestion on how to get it to work ?

 System.out.print("will all of the words ");
        String q1 = in.readLine();
 System.out.print("without the words");
        String q2 = in.readLine();

        BooleanQuery query = new BooleanQuery();
              Query matchall = QueryParser.parse(q1, "content", analyzer);
        query.add(matchall, true, false);
              Query exclude = QueryParser.parse( q2, "content" , analyzer);
        query.add(exclude, false, true);

        System.out.println("Searching for: " + query.toString("content"));
        Hits hits = searcher.search(query);
        System.out.println(hits.length() + " total matching documents  ");


----- Original Message -----
From: "Lichtner, Guglielmo" <[EMAIL PROTECTED]>
To: "'Lucene Users List'" <[EMAIL PROTECTED]>
Sent: Monday, January 20, 2003 4:04 PM
Subject: RE: how to join 2 queries togther



I'm a newbie, but I could suggest this:

BooleanQuery bq = new BooleanQuery();
bq.add(firstQuery, true, false);
bq.add(secondQuery, false, true);

That should make the first query required, and the second
one prohibited, which is like saying "+firstQuery -secondQuery"

I haven't tried this myself but I did try this for an either/or
combination,

and it does work for me.

-----Original Message-----
From: alex [mailto:[EMAIL PROTECTED]]
Sent: Monday, January 20, 2003 10:54 AM
To: Lucene User
Subject: how to join 2 queries togther


hi all

I have a method which takes in a normal query breaks into token and places
+

in front it
I have a second method which does the same instead puts a - sign front the
token

the reason i have done this is so that the user do not need to add + and -
signs by themselfs and also I cound
not get the booleanQuery to work

this makes it so that i have 2 queries

1) a file must contain all these words
2) a file must exclude this words

my question is how do join these 2 queries togther so it filters out words
that i want and do not want ?

Alex

--
To unsubscribe, e-mail:
<mailto:[EMAIL PROTECTED]>

For additional commands, e-mail:
<mailto:[EMAIL PROTECTED]>



--
To unsubscribe, e-mail:   <mailto:[EMAIL PROTECTED]>
For additional commands, e-mail: <mailto:[EMAIL PROTECTED]>


--
To unsubscribe, e-mail:   <mailto:[EMAIL PROTECTED]>
For additional commands, e-mail: <mailto:[EMAIL PROTECTED]>

Reply via email to