Class HyphenationCompoundWordTokenFilter
A Lucene.Net.Analysis.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 hyphenation grammar and a word dictionary to achieve this.
You must specify the required Lucene.Net.Util.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
Implements
Inherited Members
Namespace: Lucene.Net.Analysis.Compound
Assembly: Lucene.Net.Analysis.Common.dll
Syntax
public class HyphenationCompoundWordTokenFilter : CompoundWordTokenFilterBase, IDisposable
Constructors
| Improve this Doc View SourceHyphenationCompoundWordTokenFilter(LuceneVersion, TokenStream, HyphenationTree)
Create a HyphenationCompoundWordTokenFilter with no dictionary.
Calls HyphenationCompoundWordTokenFilter(LuceneVersion, TokenStream, HyphenationTree, Int32, Int32, Int32)
Declaration
public HyphenationCompoundWordTokenFilter(LuceneVersion matchVersion, TokenStream input, HyphenationTree hyphenator)
Parameters
Type | Name | Description |
---|---|---|
Lucene.Net.Util.LuceneVersion | matchVersion | |
Lucene.Net.Analysis.TokenStream | input | |
HyphenationTree | hyphenator |
HyphenationCompoundWordTokenFilter(LuceneVersion, TokenStream, HyphenationTree, CharArraySet)
Creates a new HyphenationCompoundWordTokenFilter instance.
Declaration
public HyphenationCompoundWordTokenFilter(LuceneVersion matchVersion, TokenStream input, HyphenationTree hyphenator, CharArraySet dictionary)
Parameters
Type | Name | Description |
---|---|---|
Lucene.Net.Util.LuceneVersion | matchVersion | Lucene version to enable correct Unicode 4.0 behavior in the dictionaries if Version > 3.0. See CompoundWordTokenFilterBase for details. |
Lucene.Net.Analysis.TokenStream | input | the Lucene.Net.Analysis.TokenStream to process |
HyphenationTree | hyphenator | the hyphenation pattern tree to use for hyphenation |
CharArraySet | dictionary | the word dictionary to match against. |
HyphenationCompoundWordTokenFilter(LuceneVersion, TokenStream, HyphenationTree, CharArraySet, Int32, Int32, Int32, Boolean)
Creates a new HyphenationCompoundWordTokenFilter instance.
Declaration
public HyphenationCompoundWordTokenFilter(LuceneVersion matchVersion, TokenStream input, HyphenationTree hyphenator, CharArraySet dictionary, int minWordSize, int minSubwordSize, int maxSubwordSize, bool onlyLongestMatch)
Parameters
Type | Name | Description |
---|---|---|
Lucene.Net.Util.LuceneVersion | matchVersion | Lucene version to enable correct Unicode 4.0 behavior in the dictionaries if Version > 3.0. See CompoundWordTokenFilterBase for details. |
Lucene.Net.Analysis.TokenStream | input | the Lucene.Net.Analysis.TokenStream to process |
HyphenationTree | hyphenator | the hyphenation pattern tree to use for hyphenation |
CharArraySet | dictionary | the word dictionary to match against. |
System.Int32 | minWordSize | only words longer than this get processed |
System.Int32 | minSubwordSize | only subwords longer than this get to the output stream |
System.Int32 | maxSubwordSize | only subwords shorter than this get to the output stream |
System.Boolean | onlyLongestMatch | Add only the longest matching subword to the stream |
HyphenationCompoundWordTokenFilter(LuceneVersion, TokenStream, HyphenationTree, Int32, Int32, Int32)
Create a HyphenationCompoundWordTokenFilter with no dictionary.
Declaration
public HyphenationCompoundWordTokenFilter(LuceneVersion matchVersion, TokenStream input, HyphenationTree hyphenator, int minWordSize, int minSubwordSize, int maxSubwordSize)
Parameters
Type | Name | Description |
---|---|---|
Lucene.Net.Util.LuceneVersion | matchVersion | |
Lucene.Net.Analysis.TokenStream | input | |
HyphenationTree | hyphenator | |
System.Int32 | minWordSize | |
System.Int32 | minSubwordSize | |
System.Int32 | maxSubwordSize |
Methods
| Improve this Doc View SourceDecompose()
Declaration
protected override void Decompose()
Overrides
| Improve this Doc View SourceGetHyphenationTree(FileInfo)
Create a hyphenator tree
Declaration
public static HyphenationTree GetHyphenationTree(FileInfo hyphenationFile)
Parameters
Type | Name | Description |
---|---|---|
System.IO.FileInfo | hyphenationFile | the file of the XML grammar to load |
Returns
Type | Description |
---|---|
HyphenationTree | An object representing the hyphenation patterns |
Exceptions
Type | Condition |
---|---|
System.IO.IOException | If there is a low-level I/O error. |
GetHyphenationTree(FileInfo, Encoding)
Create a hyphenator tree
Declaration
public static HyphenationTree GetHyphenationTree(FileInfo hyphenationFile, Encoding encoding)
Parameters
Type | Name | Description |
---|---|---|
System.IO.FileInfo | hyphenationFile | the file of the XML grammar to load |
System.Text.Encoding | encoding | The character encoding to use |
Returns
Type | Description |
---|---|
HyphenationTree | An object representing the hyphenation patterns |
Exceptions
Type | Condition |
---|---|
System.IO.IOException | If there is a low-level I/O error. |
GetHyphenationTree(Stream)
Create a hyphenator tree
Declaration
public static HyphenationTree GetHyphenationTree(Stream hyphenationSource)
Parameters
Type | Name | Description |
---|---|---|
System.IO.Stream | hyphenationSource | the InputSource pointing to the XML grammar |
Returns
Type | Description |
---|---|
HyphenationTree | An object representing the hyphenation patterns |
Exceptions
Type | Condition |
---|---|
System.IO.IOException | If there is a low-level I/O error. |
GetHyphenationTree(Stream, Encoding)
Create a hyphenator tree
Declaration
public static HyphenationTree GetHyphenationTree(Stream hyphenationSource, Encoding encoding)
Parameters
Type | Name | Description |
---|---|---|
System.IO.Stream | hyphenationSource | the InputSource pointing to the XML grammar |
System.Text.Encoding | encoding | The character encoding to use |
Returns
Type | Description |
---|---|
HyphenationTree | An object representing the hyphenation patterns |
Exceptions
Type | Condition |
---|---|
System.IO.IOException | If there is a low-level I/O error. |
GetHyphenationTree(String)
Create a hyphenator tree
Declaration
public static HyphenationTree GetHyphenationTree(string hyphenationFilename)
Parameters
Type | Name | Description |
---|---|---|
System.String | hyphenationFilename | the filename of the XML grammar to load |
Returns
Type | Description |
---|---|
HyphenationTree | An object representing the hyphenation patterns |
Exceptions
Type | Condition |
---|---|
System.IO.IOException | If there is a low-level I/O error. |
GetHyphenationTree(String, Encoding)
Create a hyphenator tree
Declaration
public static HyphenationTree GetHyphenationTree(string hyphenationFilename, Encoding encoding)
Parameters
Type | Name | Description |
---|---|---|
System.String | hyphenationFilename | the filename of the XML grammar to load |
System.Text.Encoding | encoding | The character encoding to use |
Returns
Type | Description |
---|---|
HyphenationTree | An object representing the hyphenation patterns |
Exceptions
Type | Condition |
---|---|
System.IO.IOException | If there is a low-level I/O error. |