this kind of situation is always a challenge.
You sure you can't go back to the source data and make sure it gets
entered consistently? Why is there some system that has the data being
entered inconsistently? You really sure you can't do anything about
that?
Next, is there some way an account number is already assigned to each of
these records? Then you wouldn't have to worry about spelling
inconsistencies.
I can't see any way that the final word in a situation like this could
rest anywhere than on a human. Some person has to sit there and make a
decision about which ones are matches or not.
Of course, the computer can help -- maybe you create an algorithm that
says if the first bunch of characters match, and it's 75% of the total
string length, then it's a match. So 12345678 and 12345699 would match
because the first 6 of 8 chars match (75%). Something like that...?