org.apache.lucene.analysis
public class PerFieldAnalyzerWrapper extends Analyzer
Example usage:
PerFieldAnalyzerWrapper aWrapper = new PerFieldAnalyzerWrapper(new StandardAnalyzer()); aWrapper.addAnalyzer("firstname", new KeywordAnalyzer()); aWrapper.addAnalyzer("lastname", new KeywordAnalyzer());
In this example, StandardAnalyzer will be used for all fields except "firstname" and "lastname", for which KeywordAnalyzer will be used.
A PerFieldAnalyzerWrapper can be used like any other analyzer, for both indexing and query parsing.
Constructor Summary | |
---|---|
PerFieldAnalyzerWrapper(Analyzer defaultAnalyzer)
Constructs with default analyzer.
|
Method Summary | |
---|---|
void | addAnalyzer(String fieldName, Analyzer analyzer)
Defines an analyzer to use for the specified field.
|
int | getPositionIncrementGap(String fieldName) Return the positionIncrementGap from the analyzer assigned to fieldName |
TokenStream | tokenStream(String fieldName, Reader reader) |
String | toString() |
Parameters: defaultAnalyzer Any fields not specifically defined to use a different analyzer will use the one provided here.
Parameters: fieldName field name requiring a non-default analyzer analyzer non-default analyzer to use for field