org.apache.lucene.search

## Class NGramPhraseQuery

- java.lang.Object
- - org.apache.lucene.search.Query
  - - org.apache.lucene.search.PhraseQuery
    - - org.apache.lucene.search.NGramPhraseQuery

- All Implemented Interfaces:
    Cloneable

      public class NGramPhraseQuery
      extends PhraseQuery

  This is a `PhraseQuery` which is optimized for n-gram phrase query. For example, when you query "ABCD" on a 2-gram field, you may want to use NGramPhraseQuery rather than `PhraseQuery`, because NGramPhraseQuery will `rewrite(IndexReader)` the query to "AB/0 CD/2", while `PhraseQuery` will query "AB/0 BC/1 CD/2" (where term/position).

- - ### Constructor Summary

    Constructors
    Constructor and Description
    `NGramPhraseQuery(int n)` Constructor that takes gram size.

  - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `boolean` | `equals(Object o)` Returns true iff `o` is equal to this.
    `int` | `hashCode()` Returns a hash code value for this object.
    `Query` | `rewrite(IndexReader reader)` Expert: called to re-write queries into primitive queries.

    - ### Methods inherited from class org.apache.lucene.search.PhraseQuery

      `add, add, createWeight, extractTerms, getPositions, getSlop, getTerms, setSlop, toString`

    - ### Methods inherited from class org.apache.lucene.search.Query

      `clone, getBoost, setBoost, toString`

    - ### Methods inherited from class java.lang.Object

      `finalize, getClass, notify, notifyAll, wait, wait, wait`

- - ### Constructor Detail

    - #### NGramPhraseQuery

          public NGramPhraseQuery(int n)

      Constructor that takes gram size.
      Parameters:
        `n` - n-gram size

  - ### Method Detail

    - #### 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 `PhraseQuery`
      Throws:
        `IOException`

    - #### equals

          public boolean equals(Object o)

      Returns true iff `o` is equal to this.
      Overrides:
        `equals` in class `PhraseQuery`

    - #### hashCode

          public int hashCode()

      Returns a hash code value for this object.
      Overrides:
        `hashCode` in class `PhraseQuery`

Copyright © 2000-2013 Apache Software Foundation. All Rights Reserved.