## org.apache.lucene.search.highlight
Class QueryTermExtractor

    java.lang.Object
      org.apache.lucene.search.highlight.QueryTermExtractor

    public final class QueryTermExtractor

extends Object

Utility class used to extract the terms used in a query, plus any weights. This class will not find terms for MultiTermQuery, TermRangeQuery and PrefixQuery classes so the caller must pass a rewritten query (see Query.rewrite) to obtain a list of expanded terms.

Constructor Summary
`QueryTermExtractor()`

Method Summary
`static WeightedTerm[]` `getIdfWeightedTerms(org.apache.lucene.search.Query query, org.apache.lucene.index.IndexReader reader, String fieldName)` Extracts all terms texts of a given Query into an array of WeightedTerms
`static WeightedTerm[]` `getTerms(org.apache.lucene.search.Query query)` Extracts all terms texts of a given Query into an array of WeightedTerms
`static WeightedTerm[]` `getTerms(org.apache.lucene.search.Query query, boolean prohibited)` Extracts all terms texts of a given Query into an array of WeightedTerms
`static WeightedTerm[]` `getTerms(org.apache.lucene.search.Query query, boolean prohibited, String fieldName)` Extracts all terms texts of a given Query into an array of WeightedTerms

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Constructor Detail

### QueryTermExtractor

    public QueryTermExtractor()

Method Detail

### getTerms

    public static final WeightedTerm[] getTerms(org.apache.lucene.search.Query query)

  Extracts all terms texts of a given Query into an array of WeightedTerms

  Parameters:
    `query` - Query to extract term texts from
  Returns:
    an array of the terms used in a query, plus their weights.

### getIdfWeightedTerms

    public static final WeightedTerm[] getIdfWeightedTerms(org.apache.lucene.search.Query query,
                                                           org.apache.lucene.index.IndexReader reader,
                                                           String fieldName)

  Extracts all terms texts of a given Query into an array of WeightedTerms

  Parameters:
    `query` - Query to extract term texts from
    `reader` - used to compute IDF which can be used to a) score selected fragments better b) use graded highlights eg changing intensity of font color
    `fieldName` - the field on which Inverse Document Frequency (IDF) calculations are based
  Returns:
    an array of the terms used in a query, plus their weights.

### getTerms

    public static final WeightedTerm[] getTerms(org.apache.lucene.search.Query query,
                                                boolean prohibited,
                                                String fieldName)

  Extracts all terms texts of a given Query into an array of WeightedTerms

  Parameters:
    `query` - Query to extract term texts from
    `prohibited` - `true` to extract "prohibited" terms, too
    `fieldName` - The fieldName used to filter query terms
  Returns:
    an array of the terms used in a query, plus their weights.

### getTerms

    public static final WeightedTerm[] getTerms(org.apache.lucene.search.Query query,
                                                boolean prohibited)

  Extracts all terms texts of a given Query into an array of WeightedTerms

  Parameters:
    `query` - Query to extract term texts from
    `prohibited` - `true` to extract "prohibited" terms, too
  Returns:
    an array of the terms used in a query, plus their weights.