Demo to preview the settings
Introduction
This plugin is an advanced version of our 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.
The main advantages of this plugin are:
- The ability to search the Bubble database using the "Search Pro" element and the Airtable database using the "Airtable Search Pro" element.
- Sorting search results by one of the database fields.
- Using advanced search.
This form of advanced searching allows you to fine-tune results.
White space acts as an AND operator, while a single pipe (
|
) character acts as an OR operator. To escape white space, use double quote ex. ="scheme language"
for exact match.Token | Match type | Description |
jscript | fuzzy-match | Items that fuzzy match jscript |
=scheme | exact-match | Items that are scheme |
'python | include-match | Items that include python |
!ruby | inverse-exact-match | Items that do not include ruby |
^java | prefix-exact-match | Items that start with java |
!^earlang | inverse-prefix-exact-match | Items that do not start with earlang |
.js$ | suffix-exact-match | Items that end with .js |
!.go$ | inverse-suffix-exact-match | Items that do not end with .go |
White space acts as an AND operator, while a single pipe (
|
) character acts as an OR operator.- Removed the limit on the number of database fields to search. Using the action of the element "Add Field To Search", add new fields for searching when the five fields of the element are filled in.
- The ability to use fuzzy search on the server side and configure backend workflows using the action plugin "Server Side Search".
The existing functionality of the plugin has been optimized:
- Setting the threshold for matching search results.
- Options "
location
" and "distance
”.
Distance, Threshold, and Location
The calculation for something to be considered a match (whether fuzzy or exact) takes into account how far the pattern is from the expected location, within a threshold.
To illustrate, consider the following options:
location
defaults to0
distance
defaults to100
threshold
defaults to0.6
With the above options, for something to be considered a match, it would have to be within (threshold)
0.6
x (distance) 100
= 60
characters away from the expected location 0
. For example, consider the string
"Fuse.js is a powerful, lightweight fuzzy-search library, with zero dependencies"
. Searching for the pattern "zero"
would not match anything, even though it occurs in the string. The reason is that with the above defaults, for it to be considered a match it would have to be within 60
characters away from the expected location 0
. However, "zero"
appears at index 62
.Supported languages:
- English (Latin Extended Additional)
- Russian (Cyrillic)
- Japanese
- Chinese
- Armenian
- Arabic
- Georgian
- Greek
- Hebrew