【PHP】正規表現を使わずに特定の文字列が含まれているかをチェックする方法

  • 2019年8月20日
  • PHP

PHP で、特定の文字列が含まれているかを判断する方法です。
正規表現を使うのであれば preg_match() 関数を使用するのですが、今回は正規表現を使うまでもなかったでので、strpos() 関数を使いました。

なお、今回参考にさせていただいた記事はこちらから。

【PHP】特定の文字列を含むかのチェック – Qiita
https://qiita.com/kazu56/items/2c72d187438de07c2503

 

使い方は下記のとおりです。

$text = "りんごいちごばななみかんぶどう";
if (strpos($result, '[検索したい文字列]') !== false) {
    // 変数 $text の中に検索したい文字列が含まれている場合の処理
} else {
    // 変数 $text の中に検索したい文字列が含まれていない場合の処理
}

もし、検索したい文字列が含まれていたら、その文字列が見つかった位置を返します。
検索したい文字列が見つからなかった場合は、false を返します。
そのため、上記のサンプルコードのように、結果を評価する際は === もしくは !== を使い、型までチェックするようにしてください。
ここだけ気を付ければ、個人的には preg_match() 関数よりも単純で分かりやすいと思います。

また、参考サイトに書かれていたのですが、strstr()preg_match() よりも strpos() の方が動作が早いので、正規表現を使わない場合や、単純に検索したい文字列が含まれているかだけを判断した場合は strpos() を利用すると良いとのことでした。

 

以上、正規表現を使わずに特定の文字列が含まれているかを判断する方法でした。
ご参考になれば幸いです。

>株式会社シーポイントラボ

株式会社シーポイントラボ

TEL:053-543-9889
営業時間:9:00~18:00(月〜金)
住所:〒432-8003
   静岡県浜松市中央区和地山3-1-7
   浜松イノベーションキューブ 315
※ご来社の際はインターホンで「316」をお呼びください

CTR IMG