2016-06-13 4 views
0

サブストリングではなくテキスト内の単語全体を検索したい。 私は以下のコードを書いています。Php正規表現を使用してテキスト内の単語を検索

$str = 'its so old now.'; 
$a = 'so'; 
if (stripos($str,$a) !== false) { 
echo 'true'; 
} else { 
echo 'false'; 
} 

str1 = 'its so old now.'; 
str2 = 'it has some issue.'; 

テキスト内に「so」という単語があります。それは両方の文字列に当てはまります。しかし、私は最初のケースでは、2番目の文字列 'so'に 'some'という単語が含まれているためにのみ、真実を求めます。事前に

おかげ

+1

[文字列に特定の単語が含まれていないか確認する](http://stackoverflow.com/questions/4366730/check-if-string-contains-specific-words) –

答えて

2

\bは、単語の境界にマッチする正規表現で使用することができます。

\bso\b 

それはそれ自身の上にあるときにのみsoに一致する必要があります。

if(preg_match('/\bso\b/',$str)){ 
    echo "Matches!"; 
} 

エラーにpreg_match返さない試合に0falseは、あなたがこれらの値をチェックすることを望むかもしれないので注意してください。上記は大文字と小文字を区別しません。大文字小文字を無視するには/\bso\b/iを使用できます。

関連する問題