Search reports false results

Operating system

Linux

Joplin version

3.6.6

Desktop version info

Joplin 3.6.6 (prod, linux)

Device: linux, AMD Ryzen 7 7840HS w/ Radeon 780M Graphics
Client ID: ce1626c31aca41bbbc775d0b85dffacf
Sync Version: 3
Profile Version: 49
Keychain Supported: No
Alternative instance ID: -
Sync target: WebDAV
Editor: Markdown

Revision: 3223d9c

Backup: 1.5.1
Joplin Batch: 0.2.2
Note list (Preview): 1.1.0
Note overview: 1.7.1
Templates: 2.4.0

Editor

Markdown Editor

What issue do you have?

I keep track of purchases. Lots of them. Thousands, some dating back over a decade. I just did a search to see if any transaction was for 12.70 (one two point seven zero) and a ton of them came up. I looked them over carefully and not one of them had that string in it so I tried another search using double quotes just to see if perhaps it was finding a twelve and a seventy. Same result, a ton of found notes but not one contains that exact string. I copied a few (Ctrl-A, Ctrl-C) and pasted that into a text editor and that editor could not find the string. How is Joplin finding something that is not there?

Update: If I search for a string that I know can be found, “12.72” or “12.71” it reports only the two (three in the latter case) notes that really do contain this. But “12.70” gets lots that do not have the string.

Odd. Using 3.5.13 I keep tasks of things I want to listen on the radio or watch on TV that containing starting times like 21:40 and when searching for 21 or 21:40 I get exactly the results I expect … and searching for something fictitious like 23:47 yields nothing, as expected …

Yup. If I search for something that is really there, I get the correct results. A search for something that is not there results in dozens of notes coming up. I guess from now on when I see a ton of results I will just assume there were none found. Sort of backwards but whatever works…

Is it possible the text is contained in OCR data?

I’ve never used OCR and always make sure it’s turned off if I have to sync a fresh install. Interestingly, I get the exact same results using different systems, both Linux and Win11 but I have found the problem, it’s in tables. It is finding the string (but not highlighting) across cells. The tables all have (in markdown) text similar to

2026-02-12 | 701-1234567

so it appears to be finding the “12” and the “70” even though the dot is not there. Should this happen even when I put quotes around the string? These cells contain the date and then an Amazon order number (which, in Canada, always begins with “70”) so any order placed on the twelfth of any month is considered a match for “12.70”. I vaguely recall from decades ago something about regular expressions having the dot as a sort of wildcard. Could this be happening here?

Feature or bug? :slight_smile:

According to ChatGPT:

in Joplin full-text search (FTS), the . character is effectively ignored as punctuation.

So the ‘.’ in your search is ignored, and the ‘ | ‘ is ignored in the note content, meaning you’re just searching for 12 and 70 together or with ignored character between them.

You could try using basic search instead, see Searching | Joplin

Yup. Sticking the slash in front does the trick.

/”12.70”

works. I thought using quotes forced a search for the exact contents but I see the results. I guess all these years I’ve just been lucky I never had to search for something like that. Thanks for the link.