[swift] PhoneNumberKit을 사용하여 전화번호 입력시 특정 형식 유지하기

전화번호를 입력받을 때 사용자가 일관된 형식으로 입력하도록 유도하기 위해서는 PhoneNumberKit과 같은 라이브러리를 사용할 수 있습니다. PhoneNumberKit은 Swift에서 전화번호를 다루기 위한 강력한 도구로, 입력된 전화번호를 특정 형식으로 유지할 수 있게 도와줍니다.

PhoneNumberKit 설치하기

PhoneNumberKit은 Swift Package Manager를 통해 쉽게 설치할 수 있습니다. 프로젝트의 Package.swift 파일에 다음과 같이 의존성을 추가하세요:

dependencies: [
    .package(url: "https://github.com/marmelroy/PhoneNumberKit.git", from: "3.2.0")
]

그리고 프로젝트를 빌드하면 PhoneNumberKit이 설치될 것입니다.

전화번호 유효성 검사와 포맷팅

다음은 PhoneNumberKit을 사용하여 전화번호의 유효성을 검사하고 특정 형식으로 포맷팅하는 예제입니다:

import PhoneNumberKit

let phoneNumberKit = PhoneNumberKit()

do {
    // 입력된 전화번호를 phoneNumber 객체로 변환합니다.
    let phoneNumber = try phoneNumberKit.parse("+821012345678")
    
    // 전화번호가 유효한지 검사합니다.
    if phoneNumberKit.isValidPhoneNumber(phoneNumber) {
        // 일반적으로 사용되는 형식으로 전화번호를 포맷팅합니다.
        let formattedPhoneNumber = phoneNumberKit.format(phoneNumber, toType: .e164)
        print("Formatted phone number: \(formattedPhoneNumber)")
    } else {
        print("Invalid phone number.")
    }
} catch {
    print("Parsing error: \(error)")
}

위 예제에서는 “+821012345678”이라는 전화번호를 입력받고, parse() 메서드를 사용하여 해당 전화번호를 phoneNumber 객체로 변환했습니다. 그리고 isValidPhoneNumber() 메서드를 사용하여 전화번호의 유효성을 검사하고, 유효한 경우 format() 메서드를 사용하여 특정 형식으로 포맷팅했습니다.

위 코드를 실행하면, Formatted phone number: +821012345678과 같은 출력을 얻을 수 있습니다.

추가적인 기능

PhoneNumberKit은 전화번호와 관련된 다양한 기능을 제공합니다. 예를 들어, 입력된 전화번호의 국가 코드를 가져오는 등의 작업도 쉽게 수행할 수 있습니다. PhoneNumberKit의 공식 문서를 참조하여 더 많은 기능을 알아보세요.

결론

PhoneNumberKit을 사용하면 사용자로부터 입력받은 전화번호의 형식을 특정한 형태로 유지할 수 있습니다. 유효성 검사와 포맷팅 외에도 PhoneNumberKit은 다양한 유틸리티 메서드를 제공하므로, 전화번호와 관련된 작업을 수행할 때 유용하게 사용할 수 있습니다.