Hey, I'm trying to find an algorithm to approximately match different substrings within a master list, with some forgiveness on spelling.

Say you are allowed 3 errors in the string match:
Defining error: having to remove or add a character.
If you have to replace a character, that counts as 2 errors.
Also the search is case-insensitive for now.

So abcd and abc have 1 error
bcd and abcde...