[swift] 문자열에서 특정 단어의 첫 글자 소문자로 변경하기

Swift에서는 문자열을 다룰 때 많은 유용한 기능을 제공합니다. 특히 문자열을 가공하고 원하는 형태로 변환하는 기능을 사용할 수 있습니다. 여기서는 특정 단어의 첫 글자를 소문자로 변경하는 방법에 대해 알아보겠습니다.

1. 문자열에서 특정 단어의 첫 글자 찾기

우선 주어진 문자열에서 특정 단어의 첫 글자의 위치를 찾아야 합니다. Swift에서는 firstIndex(of:) 메서드를 사용하여 문자열에서 특정 문자 또는 문자열의 위치를 찾을 수 있습니다.

let inputString = "Hello World"
let wordToModify = "World"

if let startIndex = inputString.range(of: wordToModify)?.lowerBound {
    // 시작 인덱스를 찾았을 때의 처리
}

위의 예제에서는 inputString에서 wordToModify인 “World”의 시작 위치를 찾았습니다.

2. 첫 글자 소문자로 변경하기

찾은 시작 위치를 사용하여 해당 단어의 첫 글자를 소문자로 변경할 수 있습니다. Swift에서는 문자열을 다루는데 유용한 prefixdropFirst 메서드를 활용하여 해당 작업을 수행할 수 있습니다.

if let startIndex = inputString.range(of: wordToModify)?.lowerBound {
    let modifiedWord = wordToModify.prefix(1).lowercased() + wordToModify.dropFirst()
    let updatedString = inputString.replacingCharacters(in: startIndex..<startIndex + wordToModify.count, with: modifiedWord)
    print(updatedString)  // Hello world
}

위의 예제에서는 modifiedWord를 생성하여 해당 단어의 첫 글자를 소문자로 변경한 후, replacingCharacters(in:with:)를 사용하여 원래 문자열에서 해당 단어를 수정된 단어로 대체하였습니다.

이제 당신도 Swift로 문자열에서 특정 단어의 첫 글자를 소문자로 변경할 수 있게 되었습니다!

참고 자료