LucidWorks Search comes with several different query parsing options. Clients connecting to LucidWorks via APIs can specify the query parser in the connection string.
Choosing a query parser should be based on the needs of your application. Factors which should be taken into consideration include the sophistication of the end-user population, the fields to be searched, and the nature of the user interface (a simple search box versus a search form with multiple controls).
There are four query parsers supported out of the box in LucidWorks Search.
The Lucid Query Parser is designed as a replacement for the existing Apache Lucene and Solr query parsers to produce good results with queries in any format. Its features are described in detail in the section Lucid Query Parser.
LucidWorks also supports the Lucene Query Parser syntax. The Lucene query parser syntax is described on the Lucene website. It should be noted that users may find the Lucene query parser precedence rules and boolean logic to be counter-intuitive. Additionally, many of its features are not needed in many query situations. The bottom line is it should be carefully evaluated in light of the needs of the application being built.
The DisMax parser from Solr allows one to enter a multi-field query without explicitly specifying the fields to search across. It avoids generating syntax parse exceptions in most cases by limiting the special query syntax to "+" for mandatory, "-" for prohibited, and quotes for phrase queries. It can also boost the score of documents with query terms that appear near each other.
The Extended DisMax Query Parser is an enhanced version of Solr's DisMax Parser. It allows querying in Lucene/Solr syntax, but if the query is not valid Lucene syntax, escaping is done in order to create a valid query and prevent a parse exception from being returned. Compared to DisMax, it also features enhanced stopword handling and advanced proximity boosting.
- Query Syntax and Parsing from the Apache Solr Reference Guide