Returns documents that contain terms similar to the search term, as measured by a Levenshtein edit distance.
An edit distance is the number of one-character changes needed to turn one term into another. These changes can include:
- Changing a character (box → fox)
- Removing a character (black → lack)
- Inserting a character (sic → sick)
- Transposing two adjacent characters (act → cat)
To find similar terms, the fuzzy query creates a set of all possible
variations, or expansions, of the search term within a specified edit distance.
The query then returns exact matches for each expansion.
-
value -
(Required, string) Term you wish to find in the provided
<field>. -
fuzziness - (Optional, string) Maximum edit distance allowed for matching. See Fuzziness for valid values and more information.
-
max_expansions -
(Optional, integer) Maximum number of variations created. Defaults to
50.Avoid using a high value in the
max_expansionsparameter, especially if theprefix_lengthparameter value is0. High values in themax_expansionsparameter can cause poor performance due to the high number of variations examined. -
prefix_length -
(Optional, integer) Number of beginning characters left unchanged when creating
expansions. Defaults to
0. -
transpositions -
(Optional, Boolean) Indicates whether edits include transpositions of two
adjacent characters (ab → ba). Defaults to
true. -
rewrite -
(Optional, string) Method used to rewrite the query. For valid values and more
information, see the
rewriteparameter.
Fuzzy queries will not be executed if search.allow_expensive_queries
is set to false.