패턴 찾기
Coddy Swift 여정의 기초 섹션에 포함된 레슨 — 86개 중 85번째.
챌린지
쉬움두 줄의 입력을 읽으세요: 첫 번째 줄은 검색할 텍스트이고, 두 번째 줄은 찾을 패턴입니다.
중첩되는 발생을 포함하여 텍스트에서 패턴이 몇 번 나타나는지 세고, 그 횟수를 출력하세요.
요구 사항:
- 입력의 첫 번째 줄에서 텍스트 문자열을 읽습니다
- 입력의 두 번째 줄에서 패턴 문자열을 읽습니다
- 텍스트를 반복하며 각 위치에서 패턴이 있는지 확인합니다
- 중첩된 일치를 포함하여 모든 발생 횟수를 셉니다
- 총 횟수를 단일 정수로 출력합니다
힌트: 특정 길이를 가진 인덱스 i에서 시작하는 부분 문자열을 추출하려면 인덱스와 함께 문자열 슬라이싱을 사용할 수 있습니다. 문자열을 문자 배열로 변환하거나 Swift의 문자열 인덱스 조작을 사용하여 각 위치에서 패턴이 일치하는지 확인하세요.
예시:
입력이 다음과 같으면:
ababa
aba출력은 다음과 같아야 합니다:
2패턴 "aba"는 "ababa"의 인덱스 0과 인덱스 2에서 나타납니다.
직접 해보기
// 입력 읽기
let text = readLine()!
let pattern = readLine()!
// TODO: 아래에 코드를 작성하세요
// 텍스트에서 패턴이 몇 번 나타나는지 셉니다 (중복되는 경우 포함)
// 결과 출력
print(count)