I’m having a crack at profanity filtering for a web forum written in Python.
As part of that, I’m attempting to write a function that takes a word, and returns all possible mock spellings of that word that use visually similar characters in place of specific letters (e.g. s†å©køv€rƒ|øw).
I expect I’ll have to expand this list over time to cover people’s creativity, but is there a list floating around anywhere on the internet that I could use as a starting point?
This is probably both vastly more deep than you need, yet not wide enough to cover your use case, but the Unicode consortium have had to deal with attacks against internationalised domain names and came up with this list of homographs (characters with the same or similar rendering):
http://www.unicode.org/Public/security/latest/confusables.txt
Might make a starting point at least.
http://en.wikipedia.org/wiki/Letterlike_Symbols
It's much much much less comprehensive but is more comprehensible.
I created a python class to do exactly this, based on Robin's unicode link for "confusables"
https://github.com/wanderingstan/Confusables
For example, "Hello" would get expanded into the following set of regexp character classes:
[H\H\ℋ\ℌ\ℍ\