機能私は悪い言葉の一つは、正常に動作するようです配列$stopwords
ストップワードは
function stopWords($string, $stopwords) {
$stopwords = explode(',', $stopwords);
$pattern = '/\b(' . implode('|', $stopwords) . ')\b/i';
if(preg_match($pattern, $string) > 0) {
return true;
}
return false;
}
に発見された場合はtrueを返し、この機能を持っています。
問題は、配列$stopwords
が空の場合(悪い単語が指定されていないため)、空の値が不正な単語として認識され、常にtrueを返すような場合は常にtrueを返します。しかし別のものかもしれない)。
誰でもこの問題を解決する手助けはできますか?私はin_array()
を使用する
おかげ
いいです!非常にきれいな! – Mike
これは失敗します:**完全な$文字列**がストップワードである場合にのみ、 'in_array()'がtrueを返します。** $ string **の単語がストップワードの場合 –
@EugenRieck:私は全体の文字列内の単一のオカレンスをチェックするためのソリューションを追加しました – konsolenfreddy