Menu
Coddy logo textTech

문자열 순회하기 2부

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

배열에서 인덱스와 요소를 모두 얻기 위해 enumerated()를 사용했던 것과 마찬가지로, 문자열에서도 동일하게 할 수 있습니다. 이것은 반복문을 실행하는 동안 각 문자의 위치를 알아야 할 때 유용합니다.

let word = "Swift"

for (index, char) in word.enumerated() {
    print("\(index): \(char)")
}
// 0: S
// 1: w
// 2: i
// 3: f
// 4: t

이 기술은 문자 위치를 기반으로 새로운 문자열을 만들 때 유용합니다. 예를 들어, 짝수 인덱스에 있는 문자만 유지하고 싶을 수 있습니다:

let text = "abcdef"
var result = ""

for (index, char) in text.enumerated() {
    if index % 2 == 0 {
        result += String(char)
    }
}

print(result)  // ace

추가하기 전에 String(char)를 사용하여 charString으로 변환한다는 점에 유의하세요. resultString이며, += 연산자를 사용하여 Character를 여기에 직접 추가할 수 없기 때문에 이 작업이 필요합니다.

challenge icon

챌린지

쉬움

text를 받아서 홀수 인덱스에 있는 문자들만 포함하는 새로운 문자열을 반환하는 extractOddIndexChars 함수를 작성하세요.

enumerated()를 사용하여 문자열을 반복하고, 인덱스가 홀수(1, 3, 5 등)인 문자들을 포함하는 결과를 만드세요.

매개변수:

  • text (String): 처리할 입력 문자열

반환값: 홀수 인덱스의 문자들만 포함하는 문자열 (String)

예시: text"abcdefg"라면, 함수는 "bdf"(인덱스 1, 3, 5에 있는 문자들)를 반환해야 합니다.

치트 시트

반복하는 동안 인덱스와 문자를 모두 가져오려면 문자열과 함께 enumerated()를 사용하세요:

let word = "Swift"

for (index, char) in word.enumerated() {
    print("\(index): \(char)")
}
// 0: S
// 1: w
// 2: i
// 3: f
// 4: t

문자 위치를 기반으로 문자열을 작성할 때, 추가하기 전에 CharacterString으로 변환하세요:

let text = "abcdef"
var result = ""

for (index, char) in text.enumerated() {
    if index % 2 == 0 {
        result += String(char)
    }
}

print(result)  // ace

+=를 사용하여 추가할 때 CharacterString으로 변환하려면 String(char)를 사용하세요.

직접 해보기

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

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

기초의 모든 레슨