C# Class Lucene.Net.Analysis.Compound.DictionaryCompoundWordTokenFilter

A TokenFilter that decomposes compound words found in many Germanic languages.

"Donaudampfschiff" becomes Donau, dampf, schiff so that you can find "Donaudampfschiff" even when you only enter "schiff". It uses a brute-force algorithm to achieve this.

You must specify the required LuceneVersion compatibility when creating CompoundWordTokenFilterBase:

  • As of 3.1, CompoundWordTokenFilterBase correctly handles Unicode 4.0 supplementary characters in strings and char arrays provided as compound word dictionaries.

Inheritance: CompoundWordTokenFilterBase
Exibir arquivo Open project: apache/lucenenet Class Usage Examples

Public Methods

Method Description
DictionaryCompoundWordTokenFilter ( LuceneVersion matchVersion, TokenStream input, CharArraySet dictionary ) : Lucene.Net.Analysis.Util

Creates a new DictionaryCompoundWordTokenFilter

DictionaryCompoundWordTokenFilter ( LuceneVersion matchVersion, TokenStream input, CharArraySet dictionary, int minWordSize, int minSubwordSize, int maxSubwordSize, bool onlyLongestMatch ) : Lucene.Net.Analysis.Util

Creates a new DictionaryCompoundWordTokenFilter

Protected Methods

Method Description
Decompose ( ) : void

Method Details

Decompose() protected method

protected Decompose ( ) : void
return void

DictionaryCompoundWordTokenFilter() public method

Creates a new DictionaryCompoundWordTokenFilter
public DictionaryCompoundWordTokenFilter ( LuceneVersion matchVersion, TokenStream input, CharArraySet dictionary ) : Lucene.Net.Analysis.Util
matchVersion LuceneVersion /// Lucene version to enable correct Unicode 4.0 behavior in the /// dictionaries if Version > 3.0. See CompoundWordTokenFilterBase for details.
input TokenStream /// the to process
dictionary CharArraySet /// the word dictionary to match against.
return Lucene.Net.Analysis.Util

DictionaryCompoundWordTokenFilter() public method

Creates a new DictionaryCompoundWordTokenFilter
public DictionaryCompoundWordTokenFilter ( LuceneVersion matchVersion, TokenStream input, CharArraySet dictionary, int minWordSize, int minSubwordSize, int maxSubwordSize, bool onlyLongestMatch ) : Lucene.Net.Analysis.Util
matchVersion LuceneVersion /// Lucene version to enable correct Unicode 4.0 behavior in the /// dictionaries if Version > 3.0. See CompoundWordTokenFilterBase for details.
input TokenStream /// the to process
dictionary CharArraySet /// the word dictionary to match against.
minWordSize int /// only words longer than this get processed
minSubwordSize int /// only subwords longer than this get to the output stream
maxSubwordSize int /// only subwords shorter than this get to the output stream
onlyLongestMatch bool /// Add only the longest matching subword to the stream
return Lucene.Net.Analysis.Util