Wielu z nas musi radzić sobie z wprowadzaniem danych przez użytkowników, wyszukiwanymi zapytaniami i sytuacjami, w których tekst wejściowy może potencjalnie zawierać wulgaryzmy lub niepożądany język. Często trzeba to odfiltrować.
Gdzie można znaleźć dobrą listę przekleństw w różnych językach i dialektach?
Czy są dostępne interfejsy API dla źródeł, które zawierają dobre listy? A może interfejs API, który po prostu mówi „tak, to jest czyste” lub „nie, to jest brudne” z niektórymi parametrami?
Jakie są dobre metody łapania ludzi próbujących oszukać system, na przykład $$, azz lub a55?
Punkty bonusowe, jeśli oferujesz rozwiązania dla PHP. :)
Edycja: Odpowiedzi na odpowiedzi, które mówią, po prostu unikaj problemu programowego:
Myślę, że istnieje miejsce na tego rodzaju filtr, gdy na przykład użytkownik może skorzystać z publicznego wyszukiwania obrazów, aby znaleźć zdjęcia, które zostaną dodane do wrażliwej puli społeczności. Jeśli będą mogli wyszukać „penisa”, prawdopodobnie uzyskają wiele zdjęć, tak. Jeśli nie chcemy tego zdjęcia, to zapobieganie temu słowu jako wyszukiwanemu hasłu jest dobrym gatekeeperem, choć nie jest to niezawodna metoda. Uzyskanie listy słów w pierwszej kolejności to prawdziwe pytanie.
Naprawdę mam na myśli sposób, w jaki sposób rozszyfrowanie jednego tokena jest brudne lub nie, a następnie po prostu go nie dopuszczam. Nie zawracałbym sobie głowy zapobieganiem takim sentymentom, jak całkowicie zabawne odniesienie do „żyrafy z długą szyją”. Nic tam nie możesz zrobić. :)