[Bug]: search results inconsistent for titles with apostrophes #3190

Open
opened 2026-02-20 11:01:18 -05:00 by deekerman · 0 comments
Owner

Originally created by @andrew-hill on GitHub (Jan 18, 2026).

What happened?

When searching for books with apostrophes in their titles (Magician's, Assassin's, World's, etc) I get inconsistent results, and it's often hard to find a book because of this (if other words in the title are generic).

Some examples from my library:

  • The World’s Worst Children
  • The World's Worst Children 2
  • The World’s Worst Monsters
  • The World's Worst Teachers
  • Assassin’s Apprentice
  • Assassin's Fate
  • Assassin's Quest

Note that some of the apostrophes in title/metadata are U+0027 (apostrophe) and some are U+2019 (right single quotation mark). You have to use the exact one in your search string to match a result, since the search only factors in case sensitivity. This makes it hard to find any results with U+2019 in their name, unless they happen to use U+0027 elsewhere in the metadata (e.g. series name or description). All metadata in titles above is from Audible, which uses a mix of the two characters to represent apostrophes on different books.

An additional complication for finding said books: searching for "World" alone or "Worst" alone gives many other results, reaching the limit of 12 results in the web UI without returning any of the above wanted matches.

What did you expect to happen?

I'd expect to find all of the "world's worst" books when searching for "world's worst", regardless of which type of apostrophe the metadata source has used. Similarly any of the "Assassin's" books regardless of which character is used for the apostrophe in the title.

I can imagine this could be achieved (from simplest/worst to hardest/best):

  1. ignore punctuation entirely so worlds and world's and world`s and World’s all match all variants of each other, but perhaps also unwanted matches like world-s or world@s.
  2. treat similar punctuation as equivalent ('=`=’), and presumably other punctuation equivalences could be added (-=–=—)
  3. more serious fuzzy searching, per #1401 - though this looks like it's a big project, more resource intensive, and does not necessarily include punctuation within its scope

Steps to reproduce the issue

  1. Have a book title in the library that uses U+2019 character to represent an apostrophe
  2. Search for it by typing the name including the apostrophe in the search bar (either web or mobile apps, where it's even harder to use U+2019)
  3. Book does not show up in search results

Audiobookshelf version

v2.32.1

How are you running audiobookshelf?

Docker

What OS is your Audiobookshelf server hosted from?

Linux

If the issue is being seen in the UI, what browsers are you seeing the problem on?

Chrome

Logs


Additional Notes

As best I can tell, the fuzzy matching described in #2186 and #2099 are not in the current release.

Originally created by @andrew-hill on GitHub (Jan 18, 2026). ### What happened? When searching for books with apostrophes in their titles (Magician's, Assassin's, World's, etc) I get inconsistent results, and it's often hard to find a book because of this (if other words in the title are generic). Some examples from my library: * The World’s Worst Children * The World's Worst Children 2 * The World’s Worst Monsters * The World's Worst Teachers * Assassin’s Apprentice * Assassin's Fate * Assassin's Quest Note that some of the apostrophes in title/metadata are U+0027 (apostrophe) and some are U+2019 (right single quotation mark). You have to use the exact one in your search string to match a result, since the search only factors in case sensitivity. This makes it hard to find any results with U+2019 in their name, unless they happen to use U+0027 elsewhere in the metadata (e.g. series name or description). All metadata in titles above is from Audible, which uses a mix of the two characters to represent apostrophes on different books. An additional complication for finding said books: searching for "World" alone or "Worst" alone gives many other results, reaching the limit of 12 results in the web UI without returning any of the above wanted matches. ### What did you expect to happen? I'd expect to find all of the "world's worst" books when searching for "world's worst", regardless of which type of apostrophe the metadata source has used. Similarly any of the "Assassin's" books regardless of which character is used for the apostrophe in the title. I can imagine this could be achieved (from simplest/worst to hardest/best): 1. ignore punctuation entirely so ``worlds`` and ``world's`` and ``world`s`` and ``World’s`` all match all variants of each other, but perhaps also unwanted matches like ``world-s`` or ``world@s``. 2. treat similar punctuation as equivalent (``'=`=’``), and presumably other punctuation equivalences could be added (``-=–=—``) 3. more serious fuzzy searching, per #1401 - though this looks like it's a big project, more resource intensive, and does not necessarily include punctuation within its scope ### Steps to reproduce the issue 1. Have a book title in the library that uses U+2019 character to represent an apostrophe 2. Search for it by typing the name including the apostrophe in the search bar (either web or mobile apps, where it's even harder to use U+2019) 3. Book does not show up in search results ### Audiobookshelf version v2.32.1 ### How are you running audiobookshelf? Docker ### What OS is your Audiobookshelf server hosted from? Linux ### If the issue is being seen in the UI, what browsers are you seeing the problem on? Chrome ### Logs ```shell ``` ### Additional Notes As best I can tell, the fuzzy matching described in #2186 and #2099 are not in the current release.
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
starred/audiobookshelf-advplyr#3190
No description provided.