iOS/Swift

영어 단어 중에 첫 번째 글자를 대문자로 하고 나머지는 소문자로 처리하는 함수

밤새는 탐험가89 2024. 7. 4. 13:30

 

extension String {
    func capitalizeFirstLetter() -> String {
        return self.prefix(1).uppercased() + self.lowercased().dropFirst()
    }
}
  • 이 코드는 Swift에서 문자열(String) 타입에 확장을 추가하여 첫 글자를 대문자로 만드는 capitalizeFirstLetter라는 메서드를 정의한것이다. 

 

  • 이 코드는 String 타입에 새로운 기능을 추가하는 확장을 정의한 것으로, 확장을 사용하면 기존 타입에 메서드, 계산된 속성, 서브스크립트 등을 추가할 수 있다. 
extension String {

 

 

  • 이 메서드는 문자열의 첫 글자를 대문자로 변환하고 나머지 글자를 소문자로 변환하여 반환한다.
func capitalizeFirstLetter() -> String {
    return self.prefix(1).uppercased() + self.lowercased().dropFirst()
}

 

 

  • self.prefix(1).uppercased()
    • self.prefix(1)은 문자열의 첫 글자만 추출한다. 예를 들어, 문자열이 "hello"라면 self.prefix(1)은 "h"가 된다.
    • uppercased() 메서드를 호출하여 첫 글자를 대문자로 변환한다. 따라서 "h"는 "H"가 된다.
  • self.lowercased().dropFirst()
    • self.lowercased()는 전체 문자열을 소문자로 변환한다. 예를 들어, "hello"는 여전히 "hello"이고 "HELLO"는 "hello"가 된다.
    • dropFirst() 메서드는 첫 글자를 제외한 나머지 문자열을 반환한다. 예를 들어, "hello"의 경우 "ello"가 된다.
  • return self.prefix(1).uppercased() + self.lowercased().dropFirst()
    • 대문자로 변환된 첫 글자와 소문자로 변환된 나머지 글자를 결합하여 새로운 문자열을 반환한다.

 

let str = "hello WORLD"
let capitalizedStr = str.capitalizeFirstLetter()
print(capitalizedStr) // 출력: "Hello world"

 

 

 

'iOS > Swift' 카테고리의 다른 글

Swift에서 옵셔널이란 무엇이며, 언제 사용해야 하나요?  (0) 2024.08.16
델리게이트 패턴이란?  (0) 2024.07.08
ObservableObject와 @Published  (0) 2024.06.03
Combine (MVVM 패턴)  (0) 2024.05.30
MVVM 패턴 - Binding 개념  (0) 2024.05.30