Class SpanNearQuery

  • All Implemented Interfaces:
    Serializable, Cloneable
    Direct Known Subclasses:
    PayloadNearQuery

    public class SpanNearQuery
    extends SpanQuery
    implements Cloneable
    Matches spans which are near one another. One can specify slop, the maximum number of intervening unmatched positions, as well as whether matches are required to be in-order.
    See Also:
    Serialized Form
    • Field Detail

      • slop

        protected int slop
      • inOrder

        protected boolean inOrder
      • field

        protected String field
    • Constructor Detail

      • SpanNearQuery

        public SpanNearQuery​(SpanQuery[] clauses,
                             int slop,
                             boolean inOrder)
        Construct a SpanNearQuery. Matches spans matching a span from each clause, with up to slop total unmatched positions between them. * When inOrder is true, the spans from each clause must be * ordered as in clauses.
        Parameters:
        clauses - the clauses to find near each other
        slop - The slop value
        inOrder - true if order is important
      • SpanNearQuery

        public SpanNearQuery​(SpanQuery[] clauses,
                             int slop,
                             boolean inOrder,
                             boolean collectPayloads)
    • Method Detail

      • getClauses

        public SpanQuery[] getClauses()
        Return the clauses whose spans are matched.
      • getSlop

        public int getSlop()
        Return the maximum number of intervening unmatched positions permitted.
      • isInOrder

        public boolean isInOrder()
        Return true if matches are required to be in-order.
      • getField

        public String getField()
        Description copied from class: SpanQuery
        Returns the name of the field matched by this query.
        Specified by:
        getField in class SpanQuery
      • extractTerms

        public void extractTerms​(Set<Term> terms)
        Description copied from class: Query
        Expert: adds all terms occurring in this query to the terms set. Only works if this query is in its rewritten form.
        Overrides:
        extractTerms in class Query
      • toString

        public String toString​(String field)
        Description copied from class: Query
        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.
        Specified by:
        toString in class Query
      • rewrite

        public Query rewrite​(IndexReader reader)
                      throws IOException
        Description copied from class: Query
        Expert: called to re-write queries into primitive queries. For example, a PrefixQuery will be rewritten into a BooleanQuery that consists of TermQuerys.
        Overrides:
        rewrite in class Query
        Throws:
        IOException
      • clone

        public Object clone()
        Description copied from class: Query
        Returns a clone of this query.
        Overrides:
        clone in class Query
      • equals

        public boolean equals​(Object o)
        Returns true iff o is equal to this.
        Overrides:
        equals in class Query
      • hashCode

        public int hashCode()
        Overrides:
        hashCode in class Query