Замена плохих слов в сообщении звездочками
Можно модифицировать ваш код следующим образом:
function replaceFuckWords($message)
{
    $pattern = '/(ahole|ash0le|f u c k|bi.+ch)/ie';
    return preg_replace($pattern, "str_repeat('*', strlen('$1'))", $message);
}


Суть в модификаторе e (PREG_REPLACE_EVAL).
Вот у Kohana в классе Text есть метод для замены матюков.