Background
I have the following code that is a variation of the #Replace a name in a string in Python
s = "The myth of Johnny Appleseed states that he ate many apple seeds"
s.replace('Johnny Appleseed','***')
Output
'The myth of *** states that he ate many apple seeds'
Problem
But what if the first and last name contains many variations (non-exhaustive list)
#misspellings
Johnny Applseed
Johny Appleseed
Johnny Applesee
#Letter case
johnny appleseed
JOHNNY APPLESEED
JoHny ApPleseED
Question
How do I get the same output as above
'The myth of *** states that he ate many apple seeds'
If any or all of these variations are present in the first and last name?