Why aren't special characters considered for typo tolerance?

I have a general problem here. I’m trying to use Algolia to search an index of tires. Tire models have a generally-consistent format, but there’s a lot of variance within that format.

For instance, any of the following could be referring to the same basic thing:

  • P215/65R15 95H
  • 215/65-15
  • 215 65 R15
  • 215-65-15

…and so on.

My hope was that I could leverage Algolia to sort of accommodate those sorts of variances when someone types in a model number, but the problem seems to be that Algolia isn’t considering special characters when determining if something is considered a typo.

So say that our tire size is stored as “235/45R18.” These search terms will work:

  • 235/45 R18
  • 235 45 R18

But these won’t:

  • 235/45/18
  • 235-45R18

Even if it meets the threshold for typo tolerance, it doesn’t seem to consider it to be a typo if the one typo is regular character to special character or special character to a different special character.

So basically, is there any way around this? Using synonyms is going to be impossible, given the volume of entries. I have a complicated regex I can use to determine if it’s a tire type. Right now, if I can’t find a solution within Algolia, I’m probably looking at writing some frontend JS that implements that and then reformats it to the standard format for Algolia.

Anyone else have any thoughts? Thanks!