For example, if I wrote “テキストエディタ” in Japanese, it would only search for forward matches and not for intermediate or backward matches.When I write “notebook” in English, you won’t find it in “teebook”, but you will find it in “book”.
I worry about the possibility that there are notes that can’t be found without a partial match in a sketchy search. I often do sketchy searches.
I tried and found the above search in Evernote, Boost note, etc. by searching.
What specifications is this based on?
Also, does it support full partial matches?
Thank you for the question.
That is basically intended behaviors for performance reasons.
Regarding English words, it is based on Porter stemming algorithm which is a kind of English morphological word stemming algorithms used for the term normalisation process of full-text search index.
You can search ‘doing’ with ‘do’ or ‘doing’ but can’t with ‘doi’.
Just like you don’t get results containing ‘doing’ when searched with ‘doi’ on Google.
SQLite’s FTS doesn’t work like grep for performance reason.
Similarly, regarding Japanese words, text is tokenized with TinySegmenter.
Currently the FTS only supports only forward matching.