Provided by: manpages-ja-dev_0.5.0.0.20140515+dfsg-2_all bug

名前

       strstr, strcasestr - 部分文字列の位置を示す

書式

       #include <string.h>

       char *strstr(const char *haystack, const char *needle);

       #define _GNU_SOURCE         /* feature_test_macros(7) 参照 */

       #include <string.h>

       char *strcasestr(const char *haystack, const char *needle);

説明

       strstr()  関数は、部分文字列 needle が文字列 haystack 中 で最初に現れる位置を見つける。 文
       字列を終端ヌルバイト ('\0') は比較されない。

       strcasestr()  関数は strstr()  関数と同様だが、 両方の引数に対して大文字小文字を無視する。

返り値

       これらの関数は、見つかった部分文字列の開始を指すポインタを返し、  もし部分文字列が見つから
       ない場合は NULL を返す。

属性

   マルチスレッディング (pthreads(7) 参照)
       strstr() 関数はスレッドセーフである。

       strcasestr()  関数は、例外付きのスレッドセーフである。実行中に setlocale(3) を呼び出してロ
       ケールを変更しない限り、マルチスレッドアプリケーションで安全に使用することができる。

準拠

       strstr()  関数は C89 と C99 に準拠している。 strcasestr()  関数は非標準拡張である。

バグ

       Linux libc の初期のバージョン(4.5.26 まで)は strstr()  関数の needle  引数に空文字列を指定
       できない。  最近のバージョン(4.6.27  以降)は正しく動作し、 needle が空の時は haystack を返
       す。

関連項目

       index(3),  memchr(3),  rindex(3),   strcasecmp(3),   strchr(3),   string(3),   strpbrk(3),
       strsep(3), strspn(3), strtok(3), wcsstr(3)

この文書について

       この  man ページは Linux man-pages プロジェクトのリリース 3.65 の一部 である。プロジェクト
       の説明とバグ報告に関する情報は http://www.kernel.org/doc/man-pages/ に書かれている。