You can prevent any obscenity, O and 0 confusion, and I and L confusion, just by excluding vowels. If someone interprets "f4g" in an offensive way, then they have bigger issues than can be dealt with in software.
Even programming language have them. For instance, Basic has GOTO.
/j
[1] https://newsfeed.time.com/2013/12/17/delta-airlines-is-very-...
Oh sweet summer child (meaning Jeff White, not OP/GP). As someone who has implemented a censorship/filtering list, this is a UX problem on the same level of decideability as the halting problem. You can spend boundless time curating a list to flag/grawlix every possible string that would offend even the most prudish of prudes, and some would still get through. Such as the superficially benign "EATTHE"
https://www.dailymail.co.uk/news/article-2039662/Virginia-dr...