컴퓨터공학 기초/C.C++

문자열 검색 함수 - strchr(), strrchr(), strstr(), strspn(), strcspn(), strpbrk()

레필리아 2010. 10. 11. 21:56
strchr함수
기능 : 문자열에서 임의의 문자가 처음으로 발견된 위치를 검색.
기본형 : char *strchr(const char *s, int c); // s : 문자열, c : 문자
반환값 : 찾은 문자에 대한 포인터를 반환. 발견하지 못하면 NULL을 반환.
헤더파일 : <string.h>

strrchr함수
기능 : 문자열에서 임의의 문자가 마지막으로 발견된 위치를 검색.
기본형 : char *strrchr(const char *s, int c);// s : 문자열, c : 문자
반환값 : 찾은 문자에 대한 포인터를 반환. 발견하지 못하면 NULL을 반환.
헤더파일 : <string.h>

strstr함수
기능 : 문자열에서 임의의 문자열을 검색.
기본형 : char *strstr(const char *haystack, const char *needle);
haystack : 문자열, needle : 문자열
반환값 : 찾은 문자열의 시작포인터를 반환. 발견하지 못하면 NULL을 반환.
헤더파일 : <string.h>


strspn함수
기능 : 문자열에서 특정문자들로 이루어진 초기문자열의 길이를 검색.
기본형 : size_t strspn(const char *s, const char *accept);
s : 문자열, accept : 문자집합
반환값 : 문자열의 길이를 반환.
헤더파일 : <string.h>

strcspn함수
기능 : 문자열에서 특정문자들이 아닌 문자들로 이루어진 초기 문자열의 길이를 검색.
기본형 : size_t strcspn(const char *s, const char *reject);
s : 문자열, reject : 문자집합
반환값 : 문자열의 길이를 반환.
헤더파일 : <string.h>


#include <stdio.h>
#include <string.h>

main()
{
    int n, n1;
    n = strspn("seoulKorea", "elmnopsu"); //5를반환
    n1 = strcspn("seoulKorea", "klmn");    //4를반환
    printf("%d %d\n", n,n1);
}




strpbrk함수
기능 : 문자열에서 특정문자들 중 일치하는 첫번째 문자를 검색.
기본형 : char *strpbrk(const char *s, const char *accept);
s : 문자열, accept : 문자집합
반환값 : 찾은문자의 포인터를 반환. 발견하지 못하면 NULL을 반환.
헤더파일 : <string.h>


#include <stdio.h>
#include <string.h>

main()
{
    char *ptr;
    ptr = strpbrk("seoulKorea", "Ka");
    printf("%s\n", ptr);
}