locate a substring in a string

View versions (5)

INTERFACE

#include <string.h>
char * strstr ( const char *big, const char *little )
char * strcasestr ( const char *big, const char *little )
char * strnstr ( const char *big, const char *little, size_t len )
#include <xlocale.h>
char * strcasestr_l ( const char *big, const char *little, locale_t loc )

DESCRIPTION

The strstr function locates the first occurrence of the null-terminated string little in the null-terminated string big.

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 little in the string big, where not more than len 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 for more information.

RETURN VALUES

If little is an empty string, big is returned; if little occurs nowhere in big, NULL is returned; otherwise a pointer to the first character of the first occurrence of little is returned.

Example 1
Problem

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

Workings
const char *largestring = "Foo Bar Baz";
const char *smallstring = "Bar";
char *ptr;

ptr = strstr(largestring, smallstring);

SEE ALSO

memchr, strchr, strcspn, strpbrk, strrchr, strspn, strtok

STANDARDS

The strstr function conforms to ISO/IEC 9899:1990 ("ISO C90").