【PHP】文字列の出現回数を取得する関数の使い方

アイキャッチ画像substr_count PHP
PHP
この記事は約3分で読めます。
Recommended Articles

【PHP】文字列の出現回数を取得する関数の使い方

substr_count関数の使い方(副文字列の出現回数を取得する)

php4~ で使用できます。

substr_count関数 : 書式
書式:
 substr_count(①, ② [, ③ [, ④]]
)

引数:
 ①検索対象の文字列
 ②検索する副文字列(出現回数を数える文字列) 
 ③検索開始位置(負の数を指定すると、文字列の末尾から数えます。)(省略化)
 ④開始位置以降に検索する最大文字数(省略化)

戻り値:
 文字列の出現回数

 substr_count関数は、副文字列の出現回数を取得します。活用事例としては、CSVやログデータの形式チェックがあります。決められた区切り文字でデータを読み込んで、各カラム分の区切り文字が正しい数があるかを調べることで、データの形式をチェックできます。(例:6カラムなら区切り文字は5回出現する)
substr_count関数 : 使用例
  • 副文字列の出現回数を数える
    $str = "000-0000-0000";
    echo substr_count($str, "-"); →「2」を出力
    echo substr_count($str, "-", 4); →「1」を出力
    echo substr_count($str, "-", 4, 4); →「0」を出力

    // 重なっている副文字列はカウントされません
    $str = 'gcdgcdgcd';
    echo substr_count($str, 'gcdgcd'); →「1」を出力
  • カラムの数を調べる
    $str = "安倍晋三::山口::自民党::男"; →項目数が不足したデータ
    if (substr_count($str, "::") <=5 ) {
      echo "カラム数エラー"; →出力される
    }

mb_substr_count関数の使い方(部分文字列の出現回数を取得する)

php4.3.0~ で使用できます。

mb_substr_count関数 : 書式
書式:
 mb_substr_count( ①, ② [, ③
])

引数:
 ①検索対象の文字列
 ②検索する文字列
 ③文字エンコーディング(省略時:内部文字エンコーディング)

戻り値:
 文字列の出現回数

mb_substr_count関数 : 使用例
  • マルチバイトを考慮して文字列の出現回数を取得する
    echo mb_substr_count("ちゅうにちはつよい。", "ち"); →「2」を出力
    $str = "山口県山口市";
    echo mb_substr_count($str, "山口"); →「2」を出力

関連リンク

PHPトップページ
PHP入門 & 関数リファレンス
PHPの初心者からベテランまで活用できるページです。初めての方はもちろん、もう一度基礎から学びなおしたい方は、基礎知識のページを順に読んで理解しましょう。ベテランの方向けには、関数の書式・パラメーターを調べられる構成になっています。PHPプログラム作成時にご活用下さい。
Recommended Articles