The query is rewritten by default to a SpanOrQuery containing
the expanded terms, but this can be customized.

Example:

WildcardQuery wildcard = new WildcardQuery(new Term("field", "bro?n"));
SpanQuery spanWildcard = new SpanMultiTermQueryWrapper<WildcardQuery>(wildcard);
// do something with spanWildcard, such as use it in a SpanFirstQuery

Constructor Detail

SpanMultiTermQueryWrapper

NOTE: This will call MultiTermQuery.setRewriteMethod(MultiTermQuery.RewriteMethod)
on the wrapped query, changing its rewrite method to a suitable one for spans.
Be sure to not change the rewrite method on the wrapped query afterwards! Doing so will
throw UnsupportedOperationException on rewriting this query!
In Lucene 3.x, MultiTermQuery allows queries to rewrite to different field names, but SpanQuery
needs a fixed field. The wrapped query must therefore support getField() or getTerm().

toString

Prints a query to a string, with field assumed to be the
default field and omitted.

The representation used is one that is supposed to be readable
by QueryParser. However,
there are the following limitations:

If the query was created by the parser, the printed
representation may not be exactly what was parsed. For example,
characters that need to be escaped will be represented without
the required backslash.

Some of the more complicated queries (e.g. span queries)
don't have a representation that can be parsed by QueryParser.