S'il existe une liste de caractères qui ressemblent à des lettres anglaises?

Je vais avoir une fissure à la grossièreté de filtrage pour un forum sur le web écrit en Python.

Dans le cadre de cela, je suis d'essayer d'écrire une fonction qui prend un mot et renvoie tous les possibles se moquer de l'orthographe de ce mot que l'utilisation visuellement similaires caractères à la place des lettres spécifiques (par exemple, s†å©køv€rƒ|øw).

J'imagine que je vais avoir à agrandir cette liste au fil du temps pour couvrir la créativité des gens, mais est-il une liste flottant autour de partout sur l'internet que je pourrais utiliser comme un point de départ?

  • Je ne peux pas répondre à la question, mais je ne voudrais pas utiliser une fonction qui retourne tous les possibles se moquer de l'orthographe d'un mot. Qui peuvent être extrêmement nombreuses. Au lieu de cela, j'avais normaliser chaque mot dans les posts avant de regarder dans la liste de gros mots, c'est à dire transformer "s†å©køv€rƒ|øw" à "stackoverflow" avant la recherche.
  • oh, mon dieu, que ce serait une meilleure approche ne serait-il pas. Le débutant programmeur esprit est comme un mogwai — ne devraient pas être donnés après minuit.
  • Liés, mais pas la copie exacte: stackoverflow.com/questions/4846365/...
  • pop que, dans le plus une réponse, et je me ferais un plaisir de l'accepter.
  • Non, je ne vais pas. Ça ne résout pas le problème, c'est plutôt une note de côté. Vous aurez toujours besoin de données sur le mappage de caractères, qui est le principal problème ici. (Et je pense que votre question est parfaitement valable pour les sujets en question.)
  • Je comprends votre point, et les acclamations.
  • Il y a des scripts et des programmes qui leetify un mot (bascule de cas et de remplacer les o avec zéro, avec 3 e, etc. J'aimerais commencer en regardant ces.
  • cette idée a jailli de mon esprit - c'est ni analysés de façon approfondie, ni testés. cependant, que diriez-1. choisissez une police 2. créer bitmap rendus de tous les glyphes 3. définir une mesure de similarité sur des bitmaps (simple: proportion de l'égalité contre les différentes valeurs des bits sur toutes les positions sur la grille à l'intérieur d'un std boîte englobante). 4. calculer la matrice de similarité des paires de caractères 5. cluster les glyphes en conséquence 6. choisir un représentant pour chaque cluster (idéalement, ces sortirait en tant que a-zA-Z0-9). le filtrage s'élèverait à la cartographie de chaque char sur le bon de cluster de rep et de dict de recherche.
  • ... évidemment, vous devez appliquer une technique similaire à normaliser les homophones (au moins dans des langues comme l'anglais avec des non-unique phonem-correspondances graphème). rhite, dewd ? 😉
  • c'est une bonne approche. Un jour.
  • Pour normaliser les homophones, cherchez "soundex" et de ses descendants. Pour le reste, vous aurez probablement envie de regarder pour les caractères Cyrilliques, etc., droit? "IDN homograph attaques" est le terme ici. Il y a probablement une liste de ceux qui sont déjà.