<!-- Source: https://docs.squirro.com/en/latest/technical/search/relevancy/scoring-plugins/_autosummary/squirro.lib.search.relevancy.plugins.retrieve.lexical_retrievers.FuzzyTermMatcher.html -->
# FuzzyTermMatcher

**`class FuzzyTermMatcher`**

fuzzy_match |  Perform fuzzy term matching on the selected fields.

**`pydantic model PluginConfig`**

Fields

- `fields (str)`
- `fuzziness (int | str)`
- `fuzzy_max_expansions (int)`
- `fuzzy_prefix_length (int | None)`
- `in_order (bool)`
- `slop (int)`
- `text (str | None)`

**`PluginConfig.plugin_name: ClassVar[str] = 'fuzzy_match'`**

Used to register and reference the plugin within a query.

**`field PluginConfig.text: Optional[str] = ''`**

Text to be used for fuzzy search

**`field PluginConfig.fuzzy_prefix_length: Optional[int] = 2`**

First N characters that are not used for fuzzy string-edit distance based term matching.

**`field PluginConfig.fuzziness: Union[int, str] = 'auto'`**

Fuzziness in edit-distance, how many characters per term are allowed to be changed. auto, or number of characters.

**`field PluginConfig.fuzzy_max_expansions: int = 10`**

Maximum number of terms to which the query expands for fuzzy matching.

**`field PluginConfig.fields: str = 'body'`**

Comma separated list of searchable fields

**`field PluginConfig.in_order: bool = False`**

In case of the input text resulting consisting of multiple terms, whether these terms will be required to be found in order

**`field PluginConfig.slop: int = 0`**

In case of using in_order fuzzy search, whether other terms are allowed between search terms - and how many.
