2010-09-13 3 views
3

Можно создать дубликат:
How do you implement a good profanity filter?Внедрение ненормативной лексики фильтр PHP

У меня есть приложение iPhone, который проходит строку через URL на мой PHP скрипт, который затем вставляет в свою базу данных. Я бы хотел написать некоторый php-код, который читает $ body для любой предопределенной профанации.

Прямо сейчас у меня есть только следующий код, но он ищет только точные совпадения, а не если $ body содержит, то .. тип последовательности. Кроме того, мне нужно, чтобы он заменил присягу пустым », удалив слово все вместе.

if($body == "swear word") 
    return; 

ответ

2
$swears = array("shoot", "darn", "heck"); 

foreach ($swears as $bad_word) 
    $body = str_replace($bad_word, " ", $body); 

Это будет работать как быстрый и грязный раствор, хотя он имеет Scunthorpe Problem (например, «Heckler» будет трансформироваться в «Лер», если «черт» в вашем списке ненормативной лексики) ,

+1

Это ошибка [cltuttic error] (http://thedailywtf.com/Articles/The-Clbuttic-Mistake-.aspx);) –

+0

Достаточно. Отредактировано в чем-то на этот счет. – eliah

+0

Да, я знаю о проблеме Сканторпа. Как вы можете сделать регистр массива нечувствительным? – BigMike

Смежные вопросы