Class RegexCompletionQuery


  • public class RegexCompletionQuery
    extends CompletionQuery
    A CompletionQuery which takes a regular expression as the prefix of the query term.

    Example usage of querying a prefix of 'sug' and 'sub' as a regular expression against a suggest field 'suggest_field':

      CompletionQuery query = new RegexCompletionQuery(new Term("suggest_field", "su[g|b]"));
     

    See RegExp for the supported regular expression syntax

    • Field Detail

      • flags

        private final int flags
      • determinizeWorkLimit

        private final int determinizeWorkLimit
    • Method Detail

      • createWeight

        public Weight createWeight​(IndexSearcher searcher,
                                   ScoreMode scoreMode,
                                   float boost)
                            throws java.io.IOException
        Description copied from class: Query
        Expert: Constructs an appropriate Weight implementation for this query.

        Only implemented by primitive queries, which re-write to themselves.

        Overrides:
        createWeight in class Query
        scoreMode - How the produced scorers will be consumed.
        boost - The boost that is propagated by the parent queries.
        Throws:
        java.io.IOException
      • getFlags

        public int getFlags()
        Get the regex flags
      • getDeterminizeWorkLimit

        public int getDeterminizeWorkLimit()
        Get the maximum effort permitted to determinize the automaton
      • equals

        public boolean equals​(java.lang.Object o)
        Description copied from class: Query
        Override and implement query instance equivalence properly in a subclass. This is required so that QueryCache works properly.

        Typically a query will be equal to another only if it's an instance of the same class and its document-filtering properties are identical to those of the other instance. Utility methods are provided for certain repetitive code.

        Specified by:
        equals in class Query
        See Also:
        Query.sameClassAs(Object), Query.classHash()
      • hashCode

        public int hashCode()
        Description copied from class: Query
        Override and implement query hash code properly in a subclass. This is required so that QueryCache works properly.
        Specified by:
        hashCode in class Query
        See Also:
        Query.equals(Object)
      • visit

        public void visit​(QueryVisitor visitor)
        Description copied from class: Query
        Recurse through the query tree, visiting any child queries.
        Specified by:
        visit in class Query
        Parameters:
        visitor - a QueryVisitor to be called by each query in the tree