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

    Constructors
    Constructor and Description
    `QueryTermExtractor()`

  - ### Method Summary

    All Methods Static Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `static WeightedTerm[]` | `getIdfWeightedTerms(Query query, IndexReader reader, String fieldName)` Extracts all terms texts of a given Query into an array of WeightedTerms
    `static WeightedTerm[]` | `getTerms(Query query)` Extracts all terms texts of a given Query into an array of WeightedTerms
    `static WeightedTerm[]` | `getTerms(Query query, boolean prohibited)` Extracts all terms texts of a given Query into an array of WeightedTerms
    `static WeightedTerm[]` | `getTerms(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(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(Query query,
                                                                 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 WeightedTerm[] getTerms(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(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.

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