我有下面的代码,其正在努力从一个字符串过滤出粗话,并与askerisks取代他们,但是我想数的askerisks等于粗俗单词中的字母数量。例如,如果“屁股”一词被审查,那么它将被三个askerisks取代。我如何修改此代码以实现此目的?谢谢。为星号代替粗话,并有星号的数量相匹配的粗话的字母数
$naughtyWords = array("ahole","anus","ash0le","ash0les","asholes","ass"); //etc
foreach ($naughtyWords as &$word) {
$word = ' '.$word.' ';
}
$string = str_replace($naughtyWords, " **** ", ' '.$string.' ');
那将会给你更多的麻烦比它的价值:考虑'我爱CL ***的iCal music' –
没有你好它会留下古典音乐,因为如果在词的前后存在空格,它只会匹配单词。 –
试试我的解决方案? – silkfire