I would like to be able to match a multi word search against multiple fields where every word searched is contained in any of the fields, any combination. T
I would rather avoid using query_string in case the user passes "OR", "AND" and any of the other advanced params.
In my experience, escaping the special characters with backslash is a simple and effective solution. The list can be found in the documentation http://lucene.apache.org/core/4_5_0/queryparser/org/apache/lucene/queryparser/classic/package-summary.html#package_description, plus AND/OR/NOT/TO.