PHP-код для проверки повторяющихся символов / поддельного текста - PullRequest
2 голосов
/ 15 июля 2010

У меня есть сайт знакомств, и есть место, где люди вводят свой профиль - у меня уже есть фильтр плохих слов, но теперь у меня есть проблема, когда люди вводят профиль, который является просто мусорными символами или просто "aaaaaaaaaaaaaaaaaaaa"или "--------------" и т. д. Я ищу эффективный способ отфильтровывать длинные слова повторяющихся символов.заранее спасибо.

Ответы [ 3 ]

2 голосов
/ 15 июля 2010

это должно сделать это (но оно также заменит двойные символы, возможно, вам нужно немного отредактировать):

preg_replace('{(.)\1+}','$1',$text);

ОТ: не могу поверить, что есть еще люди, которые используют дурное слово фильтры ...

2 голосов
/ 15 июля 2010

Возможно, вам понадобится байесовский фильтр спама -подобный фильтр для такого рода вещей.

Определенные слова имеют определенную вероятность появления в спаме и в законном письме. Например, большинство пользователей электронной почты часто встречают слово «Виагра» в спам-письмах, но редко видят его в других письмах. Фильтр не знает эти вероятности заранее, и его нужно сначала обучить, чтобы он мог их построить. Чтобы обучить фильтр, пользователь должен вручную указать, является ли новое письмо спамом или нет. ...

0 голосов
/ 15 июля 2010

Вы можете использовать список слов и пометить каждое сообщение, которое содержит длинные слова (например, 5+ символов), которых нет в списке - если поле содержит 5 8-буквенных слов, ни одного из которых нет в словаре, это вероятно это не значимые данные.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...