STRSTR(3)

NAME
strcasestr, strcasestr_l, strnstr, strstr - locate a substring in a string

LIBRARY
libc

SYNOPSIS
#include <string.h>
char *
strcasestr(const char *s1, const char *s2);
char *
strnstr(const char *s1, const char *s2, size_t n);
char *
strstr(const char *s1, const char *s2);
#include <string.h>
#include <xlocale.h>
char *
strcasestr_l(const char *s1, const char *s2, locale_t loc);

DESCRIPTION
The strstr() function locates the first occurrence of the null-terminated string s2 in the null-terminated string s1.

The strcasestr() function is similar to strstr(), but ignores the case of both strings.

The strnstr() function locates the first occurrence of the null-terminated string s2 in the string s1, where not more than n characters are searched. Characters that appear after a ‘\0’ character are not searched. Since the strnstr() function is a FreeBSD specific API, it should only be used when portability is not a concern.

While the strcasestr() function uses the current locale, the strcasestr_l() function may be passed a locale directly. See xlocale(3) for more information.

RETURN VALUES
If s2 is an empty string, s1 is returned; if s2 occurs nowhere in s1, NULL is returned; otherwise a pointer to the first character of the first occurrence of s2 is returned.

EXAMPLES
The following sets the pointer ptr to the "Bar Baz" portion of largestring:

    const char *largestring = "Foo Bar Baz";
    const char *smallstring = "Bar";
    char *ptr;
    ptr = strstr(largestring, smallstring);

The following sets the pointer ptr to NULL, because only the first 4 characters of largestring are searched:

    const char *largestring = "Foo Bar Baz";
    const char *smallstring = "Bar";
    char *ptr;
    ptr = strnstr(largestring, smallstring, 4);

SEE ALSO
memchr(3), strchr(3), strcspn(3), strpbrk(3), strrchr(3), strsep(3), strspn(3), strtok(3), wcsstr(3), xlocale(3)

STANDARDS
The strstr() function conforms to isoC.