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