Class WordBreakSpellChecker
A spell checker whose sole function is to offer suggestions by combining multiple terms into one word and/or breaking terms into multiple words.
Inheritance
Namespace: Lucene.Net.Search.Spell
Assembly: Lucene.Net.Suggest.dll
Syntax
public class WordBreakSpellChecker : object
Constructors
| Improve this Doc View SourceWordBreakSpellChecker()
Creates a new spellchecker with default configuration values
Declaration
public WordBreakSpellChecker()
See Also
Fields
| Improve this Doc View SourceSEPARATOR_TERM
Term that can be used to prohibit adjacent terms from being combined
Declaration
public static readonly Term SEPARATOR_TERM
Field Value
Type | Description |
---|---|
Term |
Properties
| Improve this Doc View SourceMaxChanges
Gets or sets the maximum numbers of changes (word breaks or combinations) to make on the original term(s). Default=1.
Declaration
public virtual int MaxChanges { get; set; }
Property Value
Type | Description |
---|---|
System. |
MaxCombineWordLength
Gets or sets the maximum length of a suggestion made by combining 1 or more original terms. Default=20.
Declaration
public virtual int MaxCombineWordLength { get; set; }
Property Value
Type | Description |
---|---|
System. |
MaxEvaluations
Gets or sets the maximum number of word combinations to evaluate. Default=1000. A higher value might improve result quality. A lower value might improve performance.
Declaration
public virtual int MaxEvaluations { get; set; }
Property Value
Type | Description |
---|---|
System. |
MinBreakWordLength
Gets or sets the minimum length to break words down to. Default=1.
Declaration
public virtual int MinBreakWordLength { get; set; }
Property Value
Type | Description |
---|---|
System. |
MinSuggestionFrequency
Gets or sets the minimum frequency a term must have to be included as part of a suggestion. Default=1 Not applicable when used with SUGGEST_MORE_POPULAR
Declaration
public virtual int MinSuggestionFrequency { get; set; }
Property Value
Type | Description |
---|---|
System. |
Methods
| Improve this Doc View SourceSuggestWordBreaks(Term, Int32, IndexReader, SuggestMode, WordBreakSpellChecker.BreakSuggestionSortMethod)
Generate suggestions by breaking the passed-in term into multiple words. The scores returned are equal to the number of word breaks needed so a lower score is generally preferred over a higher score.
Declaration
public virtual SuggestWord[][] SuggestWordBreaks(Term term, int maxSuggestions, IndexReader ir, SuggestMode suggestMode = default(SuggestMode), WordBreakSpellChecker.BreakSuggestionSortMethod sortMethod = WordBreakSpellChecker.BreakSuggestionSortMethod.NUM_CHANGES_THEN_MAX_FREQUENCY)
Parameters
Type | Name | Description |
---|---|---|
Term | term | |
System. |
maxSuggestions | |
Index |
ir | |
Suggest |
suggestMode |
|
Word |
sortMethod |
|
Returns
Type | Description |
---|---|
Suggest |
one or more arrays of words formed by breaking up the original term |
SuggestWordCombinations(Term[], Int32, IndexReader, SuggestMode)
Generate suggestions by combining one or more of the passed-in terms into
single words. The returned Combine
To prevent two adjacent terms from being combined (for instance, if one is mandatory and the other is prohibited), separate the two terms with SEPARATOR_TERM
When suggestMode equals SUGGEST_WHEN_NOT_IN_INDEX, each suggestion will include at least one term not in the index.
When suggestMode equals SUGGEST_MORE_POPULAR, each suggestion will have the same, or better frequency than the most-popular included term.
Declaration
public virtual CombineSuggestion[] SuggestWordCombinations(Term[] terms, int maxSuggestions, IndexReader ir, SuggestMode suggestMode = default(SuggestMode))
Parameters
Type | Name | Description |
---|---|---|
Term[] | terms | |
System. |
maxSuggestions | |
Index |
ir | |
Suggest |
suggestMode |
Returns
Type | Description |
---|---|
Combine |
an array of words generated by combining original terms |