Plugins
Templates
ZQ Fuzzy Search & Autocomplete

Introduction

This plugin is a slightly improved version of the other Fuzzy Search & Autocomplete plugin. The plugin allows searching for not-perfect matches accounting for typos and close matches. Please be aware that the plugin works correctly only with the Input element and is not suitable for the search box element.
Supported languages:
  • English (Latin Extended Additional)
  • Russian (Cyrillic)
  • Japanese
  • Chinese
  • Armenian
  • Arabic
  • Georgian
  • Greek
  • Hebrew

How to setup

1) Place element on the page
Search&Autocorrect
Set Data Type, Data Source and at least one Field To Search.
2) Place input on the page and set it Attribute ID
Select checkbox to match from the input box and paste your input ID in the Input Box ID field
3) Place the Repeating Group and set the data source of the info it's being search for.
The Data source MUST NOT be a list.
Data type

Plugin element "Search & Autocorrect"

Fields

Title
Type
Description
Data Type
Data
The type of data that will be searched for
Data Source
List of Data Type
Data Type list by which the search will be carried out
Field To Search 1
Field of Data Type
Where to find the data field
Field To Search 2
Field of Data Type
Where to find data field (optional)
Field To Search 3
Field of Data Type
Where to find data field (optional)
Field To Search 4
Field of Data Type
Where to find data field (optional)
Field To Search 5
Field of Data Type
Where to find data field (optional)
Text To Match
Text
The string by which the search will be carried out
OR Set Text to Match from an Input Box
"yes"/"no"
Use input value as the search string
Input Box ID
Text
Input ID
Threshold
Number
At what point does the matching algorithm give up. A threshold of 0.0 requires a perfect match (of both letters and location), a threshold of 1.0 would match anything.
Case Sensitive
"yes"/"no"
Case Sensitive search
Tokenize
"yes"/"no"
When true, the algorithm will search individual words and the full string, computing the final score as a function of both. In this case, the threshold, distance, and location are inconsequential for individual tokens and are thus ignored.
Match All Tokens
"yes"/"no"
When true, the result set will only include records that match all tokens. Will only work if tokenize is also true.
Find All Matches
"yes"/"no"
When true, the matching function will continue to the end of a search pattern even if a perfect match has already been located in the string.
Location
Number
Determines approximately wherein the text is the pattern expected to be found.
Distance
Number
Determines how close the match must be to the fuzzy location (specified by location). An exact letter match which is distance characters away from the fuzzy location would score as a complete mismatch. A distance of 0 requires the match to be at the exact location specified, a distance of 1000 would require a perfect match to be within 800 characters of the location to be found using a threshold of 0.8.
Max Pattern Length
Number
The maximum length of the pattern. The longer the pattern (i.e. the search query), the more intensive the search operation will be. Whenever the pattern exceeds the maxPatternLength, an error will be thrown. Don't set it too high, for performance purposes.
Exclude Terms Shorter Than
Number
Exclude all search words shorter than this value

Exposed states

Title
Type
Description
Matches
List of Data Type
List of matched things
Match Scores
List of numbers
Match scores from 0 to 1. 0 is a perfect match.
Input Box's Value
Text
Value of input box from ID

Actions

Reset input

Resets the input value with the Input Box ID entered in the element and resets all states.

Demo to preview the settings

Last modified 2mo ago