Menu
Coddy logo textTech

문자열 순회하기 1부

Coddy Swift 여정의 기초 섹션에 포함된 레슨 — 86개 중 71번째.

배열과 마찬가지로, Swift의 문자열은 반복 가능한 문자들의 시퀀스입니다. 이를 통해 익숙한 for-in 루프를 사용하여 텍스트를 한 번에 한 문자씩 쉽게 처리할 수 있습니다.

문자열을 반복문으로 돌릴 때, Swift는 각 문자를 순서대로 제공합니다:

let word = "Hello"

for char in word {
    print(char)
}
// H
// e
// l
// l
// o

루프 내의 각 charString이 아니라 Character 타입입니다. 이러한 구분은 개별 문자를 비교하거나 조작해야 할 때 중요합니다.

이 기술을 사용하여 특정 문자의 개수를 세는 것과 같이 텍스트를 분석할 수 있습니다:

let message = "banana"
var countA = 0

for char in message {
    if char == "a" {
        countA += 1
    }
}

print(countA)  // 3

문자를 비교할 때 "a"와 같이 따옴표 안에 단일 문자를 사용한다는 점에 유의하세요. Swift는 다른 문자와 비교할 때 이를 자동으로 Character로 취급합니다.

challenge icon

챌린지

쉬움

text를 인자로 받아 문자열 내 모음의 총 개수를 반환하는 countVowels 함수를 작성하세요.

문자열의 각 문자를 순회하며 모음(a, e, i, o, u)이 몇 개인지 세어보세요. 소문자와 대문자 모음을 모두 포함해야 합니다.

매개변수:

  • text (String): 분석할 문자열

반환값: 문자열에서 발견된 모음의 총 개수 (Int)

예시: text"Hello World"인 경우, 함수는 3을 반환해야 합니다 (모음은 e, o, o입니다).

치트 시트

for-in 루프를 사용하여 문자열을 반복하고 각 문자를 처리할 수 있습니다:

let word = "Hello"

for char in word {
    print(char)
}
// H
// e
// l
// l
// o

루프의 각 charString이 아니라 Character 타입입니다.

조건문에서 문자를 직접 비교할 수 있습니다:

let message = "banana"
var countA = 0

for char in message {
    if char == "a" {
        countA += 1
    }
}

print(countA)  // 3

직접 해보기

func countVowels(text: String) -> Int {
    // 여기에 코드를 작성하세요
}
quiz icon실력 점검

이 레슨에는 짧은 퀴즈가 포함되어 있습니다. 레슨을 시작해 문제를 풀고 진행 상황을 기록하세요.

기초의 모든 레슨