FuzzySearchOptions
Inheritance: java.lang.Object
public abstract class FuzzySearchOptions
Provides options of the fuzzy search.
Learn more
Constructors
| Constructor | Description |
|---|---|
| FuzzySearchOptions() |
Methods
| Method | Description |
|---|---|
| getEnabled() | Gets a value indicating whether fuzzy search feature is enabled. |
| setEnabled(boolean value) | Sets a value indicating whether fuzzy search feature is enabled. |
| getFuzzyAlgorithm() | Gets the fuzzy search algorithm. |
| setFuzzyAlgorithm(FuzzyAlgorithm value) | Sets the fuzzy search algorithm. |
| getOnlyBestResults() | Gets a value indicating whether only the best results will be returned. |
| setOnlyBestResults(boolean value) | Sets a value indicating whether only the best results will be returned. |
| getOnlyBestResultsRange() | Gets the maximum exceeding of the minimum number of mistakes that are found. |
| setOnlyBestResultsRange(byte value) | Sets the maximum exceeding of the minimum number of mistakes that are found. |
| getConsiderTranspositions() | Gets a value indicating whether the fuzzy search algorithm must consider transposition of two adjacent characters as a single mistake. |
| setConsiderTranspositions(boolean value) | Sets a value indicating whether the fuzzy search algorithm must consider transposition of two adjacent characters as a single mistake. |
FuzzySearchOptions()
public FuzzySearchOptions()
getEnabled()
public abstract boolean getEnabled()
Gets a value indicating whether fuzzy search feature is enabled. The default value is false .
Returns: boolean - A value indicating whether fuzzy search feature is enabled.
setEnabled(boolean value)
public abstract void setEnabled(boolean value)
Sets a value indicating whether fuzzy search feature is enabled. The default value is false .
Parameters:
| Parameter | Type | Description |
|---|---|---|
| value | boolean | A value indicating whether fuzzy search feature is enabled. |
getFuzzyAlgorithm()
public abstract FuzzyAlgorithm getFuzzyAlgorithm()
Gets the fuzzy search algorithm. The currently available fuzzy search algorithms are SimilarityLevel and TableDiscreteFunction . The default value is an instance of SimilarityLevel with a similarity level value of 0.5 .
Returns: FuzzyAlgorithm - The fuzzy search algorithm.
The example demonstrates how to set the fuzzy search algorithm.
```
String indexFolder = "c:\\MyIndex\\";
String documentsFolder = "c:\\MyDocuments\\";
String query = "Einstein";
Index index = new Index(indexFolder); // Creating an index in the specified folder
index.add(documentsFolder); // Indexing documents from the specified folder
SearchOptions options = new SearchOptions();
options.getFuzzySearch().setEnabled(true); // Enabling the fuzzy search
options.getFuzzySearch().setFuzzyAlgorithm(new TableDiscreteFunction(1, new Step(5, 2), new Step(8, 3))); // Creating the fuzzy search algorithm
// This function specifies 1 as the maximum number of mistakes for words from 1 to 4 characters.
// It specifies 2 as the maximum number of mistakes for words from 5 to 7 characters.
// It specifies 3 as the maximum number of mistakes for words from 8 and more characters.
SearchResult result = index.search(query, options); // Search in index
```
setFuzzyAlgorithm(FuzzyAlgorithm value)
public abstract void setFuzzyAlgorithm(FuzzyAlgorithm value)
Sets the fuzzy search algorithm. The currently available fuzzy search algorithms are SimilarityLevel and TableDiscreteFunction . The default value is an instance of SimilarityLevel with a similarity level value of 0.5 .
Parameters:
| Parameter | Type | Description |
|---|---|---|
| value | FuzzyAlgorithm | The fuzzy search algorithm. |
The example demonstrates how to set the fuzzy search algorithm.
```
String indexFolder = "c:\\MyIndex\\";
String documentsFolder = "c:\\MyDocuments\\";
String query = "Einstein";
Index index = new Index(indexFolder); // Creating an index in the specified folder
index.add(documentsFolder); // Indexing documents from the specified folder
SearchOptions options = new SearchOptions();
options.getFuzzySearch().setEnabled(true); // Enabling the fuzzy search
options.getFuzzySearch().setFuzzyAlgorithm(new TableDiscreteFunction(1, new Step(5, 2), new Step(8, 3))); // Creating the fuzzy search algorithm
// This function specifies 1 as the maximum number of mistakes for words from 1 to 4 characters.
// It specifies 2 as the maximum number of mistakes for words from 5 to 7 characters.
// It specifies 3 as the maximum number of mistakes for words from 8 and more characters.
SearchResult result = index.search(query, options); // Search in index
```
|
getOnlyBestResults()
public abstract boolean getOnlyBestResults()
Gets a value indicating whether only the best results will be returned. The default value is false .
Returns: boolean - true if only the best results will be returned; otherwise false .
setOnlyBestResults(boolean value)
public abstract void setOnlyBestResults(boolean value)
Sets a value indicating whether only the best results will be returned. The default value is false .
Parameters:
| Parameter | Type | Description |
|---|---|---|
| value | boolean | true if only the best results will be returned; otherwise false . |
getOnlyBestResultsRange()
public abstract byte getOnlyBestResultsRange()
Gets the maximum exceeding of the minimum number of mistakes that are found. The default value is 0 .
Returns: byte - The maximum exceeding of the minimum number of mistakes found.
setOnlyBestResultsRange(byte value)
public abstract void setOnlyBestResultsRange(byte value)
Sets the maximum exceeding of the minimum number of mistakes that are found. The default value is 0 .
Parameters:
| Parameter | Type | Description |
|---|---|---|
| value | byte | The maximum exceeding of the minimum number of mistakes found. |
getConsiderTranspositions()
public abstract boolean getConsiderTranspositions()
Gets a value indicating whether the fuzzy search algorithm must consider transposition of two adjacent characters as a single mistake. The default value is true .
Returns: boolean - true if the fuzzy search algorithm considers transpositions; otherwise false .
setConsiderTranspositions(boolean value)
public abstract void setConsiderTranspositions(boolean value)
Sets a value indicating whether the fuzzy search algorithm must consider transposition of two adjacent characters as a single mistake. The default value is true .
Parameters:
| Parameter | Type | Description |
|---|---|---|
| value | boolean | : true if the fuzzy search algorithm considers transpositions; otherwise false . |