substr_count
(PHP 4, PHP 5, PHP 7)
substr_count — 副文字列の出現回数を数える
説明
substr_count
( string $haystack
, string $needle
[, int $offset
= 0
[, int|null $length
= null
]] ) : int
substr_count() は、文字列
haystack
の中での副文字列
needle
の出現回数を返します。
needle
は英大小文字を区別することに注意してください。
注意:
この関数は重なり合う副文字列をカウントしません。以下の例を見てください !
パラメータ
haystack
- 検索対象の文字列
needle
- 検索する副文字列
offset
- 開始位置のオフセット。 負の数を指定すると、文字列の末尾から数えます。
length
- 指定したオフセット以降に副文字列で検索する最大長。 オフセットと長さの総和が
haystack
の長さよりも長い場合、警告が発生します。 負の数を指定すると、haystack
の末尾から数えます。
返り値
この関数は 整数を返します。
変更履歴
バージョン | 説明 |
---|---|
8.0.0 | length は、nullable になりました。
|
7.1.0 | 負の offset と length をサポートするようになりました。
|
例
例1 substr_count() の例
<?php$text = 'This is a test';echo strlen($text); // 14echo 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() - 文字列が最初に現れる位置を見つける