Search the forum for "name matching" as this comes up moderately often.
Or you might investigate the CDC product Link Plus: https://www.cdc.gov/cancer/npcr/tools/registryplus/lp.htm
The web site references for Cancer studies but it will do probabilistic matching on a number of fields that you designate such as names, addresses, phone number, date of birth or other identifying information.
It is free, so cost is not a factor.
If you have lots of these it is likely quicker than writing and debugging your own code. The output includes probability of match between pairs of records. So typical differences have pretty high probabilities and are easy to search.
I last used this when a vendor changed their data base and compared the same clients to the previous data extracts and was able to map the old identifier field to the new one (the main purpose) and then identify name spelling issues, date of birth and gender "changes" from old to new data.