문타쿠, 공부하다.
[C언어 코딩 도장] Unit 44. 문자열 검색하기 본문
문자열에서 문자와 문자열로 검색하는 방법을 알아보자.
-> 문자열 검색은 포인터를 이용한다.
44.1 문자열 안에서 문자로 검색하기
문자열에서 특정 문자로 검색하는 방법
-> strchr 함수를 사용하면 문자열에서 특정 문자로 검색할 수 있으며, string.h 헤더 파일에 선언되어 있다.
#include <stdio.h>
#include <string.h>
int main(void)
{
char s1[30] = "A Garden Diary";
// 'a'로 시작하는 문자열 검색, 포인터 반환
char* ptr = strchr(s1, 'a');
// 검색한 문자열이 없을 때까지 반복
while (ptr != NULL)
{
// 검색된 문자열 출력
printf("%s\n", ptr);
// 포인터에 1을 더하여 a 다음부터 검색
ptr = strchr(ptr + 1, 'a');
}
return 0;
}
44.2 문자열의 오른쪽 끝부터 문자로 검색하기
strchr 함수는 문자열의 처음부터 문자를 검색해서 반환하지만, strrchr 함수는 문자열의 끝에서부터 문자를 검색할 수 있으며, 마찬가지로 string.h 헤더 파일에 선언되어 있다.
#include <stdio.h>
#include <string.h>
int main(void)
{
char s1[30] = "A Garden Diary";
char* ptr = strrchr(s1, 'a');
printf("%s\n", ptr);
return 0;
}
44.3 문자열 안에서 문자열로 검색하기
문자열 안에서 문자열을 검색하기 위해서는 strstr 함수를 사용하며, 마찬가지로 string.h 헤더 파일에 선언되어 있다.
#include <stdio.h>
#include <string.h>
int main(void)
{
char s1[30] = "A Garden Diary";
char* ptr = strstr(s1, "den");
printf("%s\n", ptr);
return 0;
}
'C언어 > C언어 코딩 도장' 카테고리의 다른 글
[C언어 코딩 도장] Unit 45. 문자열 자르기 (0) | 2023.10.02 |
---|---|
[C언어 코딩 도장] Unit 44. 연습문제 및 심사문제 (0) | 2023.10.02 |
[C언어 코딩 도장] Unit 43. 연습문제 및 심사문제 (0) | 2023.10.02 |
[C언어 코딩 도장] Unit 43. 문자열 만들기 (0) | 2023.10.02 |
[C언어 코딩 도장] Unit 42. 연습문제 및 심사문제 (0) | 2023.09.25 |