文字列から失礼な単語を除外し、それらをアスケリスクに置き換える次のコードがありますが、アスケリスクの数を失礼な単語の文字数と等しくしたいと思います。たとえば、「お尻」という単語が検閲された場合、3 つのアスケリスクに置き換えられます。これを達成するためにこのコードを変更するにはどうすればよいですか? ありがとう。
$naughtyWords = array("ahole","anus","ash0le","ash0les","asholes","ass"); //etc
foreach ($naughtyWords as &$word) {
$word = ' '.$word.' ';
}
$string = str_replace($naughtyWords, " **** ", ' '.$string.' ');