q=(java OR groovy OR scala) W (programming OR coding OR development)
BUT... there is the caveat that the surround query parser does no
analysis. So, maybe you need "Java OR java" etc. Or, if you know that the
index is lower case.
Try this dataset:
curl
http://localhost:8983/solr/****collection1/update?commit=true<http://localhost:8983/solr/**collection1/update?commit=true>
**<http://localhost:8983/solr/**collection1/update?commit=true<http://localhost:8983/solr/collection1/update?commit=true>
**>-H 'Content-type:application/csv' -d '
id,features
doc-1,java coding
doc-2,java programming
doc-3,java development
doc-4,groovy coding
doc-5,groovy programming
doc-6,groovy development
doc-7,scala coding
doc-8,scala programming
doc-9,scala development
doc-10,c coding
doc-11,c programming
doc-12,c development
doc-13,java language
doc-14,groovy language
doc-15,scala language'
And try these commands:
curl
"http://localhost:8983/solr/****select/?q=(java+OR+scala)+W+**<http://localhost:8983/solr/**select/?q=(java+OR+scala)+W+**>
programming\<http://localhost:**8983/solr/select/?q=(java+OR+**
scala)+W+programming%5C<http://localhost:8983/solr/select/?q=(java+OR+scala)+W+programming%5C>
>
&df=features&defType=surround&****indent=true"
curl
"http://localhost:8983/solr/****select/<http://localhost:8983/solr/**select/>
<http://localhost:8983/**solr/select/<http://localhost:8983/solr/select/>
>
?\
q=(java+OR+scala)+W+(****programming+OR+coding)\
&df=features&defType=surround&****indent=true"
curl
"http://localhost:8983/solr/****select/\<http://localhost:8983/solr/**select/%5C>
<http://localhost:**8983/solr/select/%5C<http://localhost:8983/solr/select/%5C>
>
?q=(java+OR+groovy+OR+scala)+****W+(programming+OR+coding+OR+***
*development)\
&df=features&defType=surround&****indent=true"
The LucidWorks Search query parser also supports NEAR, BEFORE, and AFTER
operators, in conjunction with OR and "-" to generate span queries:
q=(java OR groovy OR scala) BEFORE:0 (programming OR coding OR
development)
-- Jack Krupansky
-----Original Message----- From: Mike Hugo
Sent: Monday, May 20, 2013 11:42 PM
To: solr-user@lucene.apache.org
Subject: Expanding sets of words
Is there a way to query for combinations of two sets of words? For
example, if I had
(java or groovy or scala)
(programming or coding or development)
Is there a query parser that, at query time, would expand that into
combinations like
java programming
groovy programming
scala programming
java coding
java development
....
etc etc etc
Thanks!
Mike