Reference

function
<cstring>

strpbrk

const char * strpbrk ( const char * str1, const char * str2 ); char * strpbrk ( char * str1, const char * str2 );
Locate characters in string
Returns a pointer to the first occurrence in str1 of any of the characters that are part of str2, or a null pointer if there are no matches.

The search does not include the terminating null-characters of either strings, but ends there.

Parameters

str1
C string to be scanned.
str2
C string containing the characters to match.

Return Value

A pointer to the first occurrence in str1 of any of the characters that are part of str2, or a null pointer if none of the characters of str2 is found in str1 before the terminating null-character.
If none of the characters of str2 is present in str1, a null pointer is returned.

Portability

In C, this function is only declared as:

char * strpbrk ( const char *, const char * );

instead of the two overloaded versions provided in C++.

Example

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
/* strpbrk example */
#include <stdio.h>
#include <string.h>
int main ()
{
 char str[] = "This is a sample string";
 char key[] = "aeiou";
 char * pch;
 printf ("Vowels in '%s': ",str);
 pch = strpbrk (str, key);
 while (pch != NULL)
 {
 printf ("%c " , *pch);
 pch = strpbrk (pch+1,key);
 }
 printf ("\n");
 return 0;
}

Output:

Vowels in 'This is a sample string': i i a a e i 


See also

strcspn
Get span until character in string (function)
strchr
Locate first occurrence of character in string (function)
strrchr
Locate last occurrence of character in string (function)
memchr
Locate character in block of memory (function)

AltStyle によって変換されたページ (->オリジナル) /