0
我有一個檢查不良字詞的函數,但它不能工作,我想要它。例如,測試是一個粗俗的詞,那麼如果我說「測試」這個函數會把它算作一個粗俗的詞。我將如何解決這個問題,以便它不這樣做。檢測字符串內的禁止字詞
這裏是我的代碼:
function censor($message) {
$badwords = $this->censor; //array with the cuss words.
$message = @ereg_replace('[^A-Za-z0-9 ]','',strtolower(' '.$message.' '));
foreach($badwords as $bad) {
$bad = trim($bad);
if(strpos($message.' ', $bad.' ')!==false) {
if(strlen($bad)>=2) {
return true;
}
}
}
}
使用\ b在正則表達式(在開始和結束)。它匹配單詞邊界。 – HappyTimeGopher 2012-08-09 22:41:32
'ereg_'函數由於某種原因而被棄用。用@代替通知不會讓它變得更好。切換到'preg_'功能。 – kapa 2012-08-09 22:42:01
@HappyTimeGopher我在哪裏添加? – user1588878 2012-08-09 22:43:46