関数・クラス解説

substr_count

version:PHP 4, PHP 5, PHP 7 (公式)

副文字列の出現回数を数える

公式リファレンス

書式

substr_count ( string $haystack , string $needle [, int $offset = 0 [, int $length ]] ) : int

説明

substr_count() は、文字列 haystack の中での副文字列 needle の出現回数を返します。 needle は英大小文字を区別することに注意してください。

注意:

この関数は重なり合う副文字列をカウントしません。以下の例を見てください !

パラメータ

haystack
検索対象の文字列
needle
検索する副文字列
offset
開始位置のオフセット。 負の数を指定すると、文字列の末尾から数えます。
length
指定したオフセット以降に副文字列で検索する最大長。 オフセットと長さの総和が haystack の長さよりも長い場合、警告が発生します。 負の数を指定すると、haystack の末尾から数えます。

返値

この関数は 整数を返します。

更新履歴

バージョン 説明
7.1.0 負の offset と length をサポートするようになりました。 length は、0 を指定しても問題ありません。

サンプル

例1 substr_count() の例

$text = 'This is a test'; echo strlen($text); // 14 echo substr_count($text, 'is'); // 2 // 文字列は 's is a test' になっているので, 1 が表示される echo substr_count($text, 'is', 3); // テキストは 's i' になっているので, 0 が表示される echo substr_count($text, 'is', 3, 3); // 5+10 > 14 なので、警告が発生する echo substr_count($text, 'is', 5, 10); // 重なっている副文字列はカウントされないので、1 が表示される $text2 = 'gcdgcdgcd'; echo substr_count($text2, 'gcdgcd');

参考

  • count_chars() - 文字列で使用されている文字に関する情報を返す
  • strpos() - 文字列内の部分文字列が最初に現れる場所を見つける
  • substr() - 文字列の一部分を返す
  • strstr() - 文字列が最初に現れる位置を見つける
  • ワード検索


    ※入力キーワードが、関数名・説明文・タグに含まれるものを検索

    関数名アルファベット別

    A B C D E F G H I J
    K L M N O P Q R S T
    U V W X Y Z _

    最終更新一覧

    stristr
     大文字小文字を区別せず文字列を検索し、ヒット箇所以降(あるいは以前)の文字列を返却

    stripslashes
     バックスラッシュでエスケープされた文字列から、バックスラッシュを取り除く

    stripos
     大文字小文字を区別せずに文字列が最初に現れる位置を取得する

    stripcslashes
     addcslashes() でクォートされた文字列をアンクォートする

    strip_tags
     文字列から HTML と PHP のタグを除去して返却

    strcspn
     指定した文字が最初に現れる位置を調べる

    strcoll
     ロケールに基づいて2つの文字列を比較し同じか(あるいは大小)を判定する

    strcmp
     2つの文字列を比較し同じか(あるいは大小)を判定する

    strchr
     strstr() のエイリアス

    strcasecmp
     2つの文字列を比較(大文字小文字を区別せず同じとみなす)

    カテゴリー一覧

    PHP の振る舞いの変更
    音声フォーマットの操作
    認証サービス
    コマンドライン関連
    圧縮およびアーカイブ
    暗号
    データベース関連
    日付および時刻関連
    ファイルシステム
    自然言語および文字エンコーディング
    画像処理および作成
    メール関連
    数学
    テキスト以外の MIME 型
    プロセス制御
    その他の基本モジュール
    その他のサービス
    検索エンジン用の拡張モジュール
    サーバー固有のモジュール
    セッション関連
    テキスト処理
    変数・データ型関連
    ウェブサービス
    Windows 用のモジュール
    XML 操作
    GUI用の拡張モジュール