Comment mettre en place un bon filtre de langage?

Beaucoup d'entre nous besoin pour faire face à la saisie de l'utilisateur, les requêtes de recherche, et des situations où la saisie de texte peut contenir des grossièretés ou des indésirables de la langue. Souvent, ce doit être filtré.

Où peut-on trouver une bonne liste de gros mots dans les différentes langues et dialectes?

Sont là des Api à disposition des sources qui contiennent de bonnes listes? Ou peut-être une API qui dit simplement "oui, c'est propre" ou "non c'est sale" avec certains paramètres?

Quelles sont les bonnes méthodes pour attraper les gens qui tentent de tromper le système, comme un$$, azz, ou a55?

Des points de Bonus si vous proposez des solutions pour PHP. 🙂

Edit: Réponse à des réponses qui disent simplement éviter la programmatique question:

Je pense qu'il y a une place pour ce genre de filtre lorsque, par exemple, un utilisateur peut utiliser l'image publique de recherche pour trouver des photos qui sont ajoutés à une sensible à la piscine communautaire. Si il est possible de rechercher pour "pénis", alors ils seront probablement obtenir beaucoup de photos de l', yep. Si nous ne voulons pas de photos de l', puis prévenir le mot comme un terme de recherche est un bon gardien, certes pas une méthode infaillible. Obtenir la liste des mots en premier lieu est la vraie question.

Donc, je suis vraiment se référant à une façon de voir d'un seul jeton est sale ou pas et puis tout simplement la rejeter. Je n'avais pas la peine de prévenir un sentiment comme la totalement hilarant "au long cou de girafe" de référence. Rien que vous pouvez faire là-bas. 🙂

C'est une honte que toutes les réponses sont existentielle et défaitiste détournements de la programmation défi. Avec "cyborg" services informatiques comme Mechanical Turk gagne du terrain, et presque tous les logiciels le devenir social, il est plus important que jamais d'avoir une heuristique de rouge-signaler un contenu et de le porter à l'attention d'un modérateur!
Veuillez être prudent au sujet de la langue en contexte, surtout si vous êtes en train de faire i18n. Une fois, j'ai essayé de mettre en place un Groupe Google pour le cours que je donnais appelé "Sanal ortamda görselleştirme" qui est le turc pour "la Visualisation du média virtuel". Google a été assez stupide pour refuser parce que le titre contient le mot "anal". Sanal[tr]=Virtuelle[fr] et Google sans vergogne m'a accusé de blasphème! 😀 s'il vous Plaît ne laissez pas bizarre ce genre de choses arrivent.
Si vous cherchez le mot dans espagnol? Vous pouvez réellement obtenir autour de Google Images filtre (si vous êtes localisé à une autre langue).
Une autre suggestion serait de ne PAS interdire ces mots, mais pour enregistrer les utilisateurs qui les utilisent. Si un utilisateur/IP est de plus de 2, 3 ou ce que vous voulez, puis bloquer cette personne. Pas infaillible non plus, mais je pense que c'est beaucoup plus pratique à être bloqués et doivent changer d'utilisateur/IP/tant que l'écriture "fluffy bunny blanc" au lieu de "chatte". D'une part, les utilisateurs ne sais pas QUELS mots ou expressions qu'ils ne peuvent pas utiliser, de sorte qu'ils ne peuvent pas deviner les différentes mauvais mots que les donc facilement que d'être banni.
Les filtres de blasphèmes sont une mauvaise idée. C'est très dur de faire la différence entre quelqu'un qui essaie de tromper le système ("Fudge vous!") et quelqu'un légitimement parler de quelque chose de totalement approprié ("j'aime le chocolat fudge.")

OriginalL'auteur Ben Throop | 2008-11-07