[swift] PhoneNumberKit을 사용하여 휴대전화 번호 형식 관리하기

Swift 언어를 사용하여 휴대전화 번호 형식을 관리해야 할 때, PhoneNumberKit 라이브러리는 매우 유용한 도구입니다. PhoneNumberKit은 휴대전화 번호를 파싱하고 형식을 검증하는 기능을 제공합니다. 이를 통해 애플리케이션에서 휴대전화 번호를 올바른 형식으로 입력받고 처리할 수 있습니다.

PhoneNumberKit 설치하기

PhoneNumberKit은 CocoaPods 또는 Swift Package Manager를 통해 설치할 수 있습니다. 먼저, 해당 프로젝트의 Podfile에 다음 줄을 추가합니다:

pod 'PhoneNumberKit'

다음으로 터미널에서 다음 명령어를 실행하여 Cocoapods를 설치합니다:

pod install

CocoaPods를 사용하지 않는다면, 프로젝트의 패키지 매니페스트 파일에 다음과 같이 의존성을 추가합니다:

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

휴대전화 번호 형식 검증하기

PhoneNumberKit을 사용하여 휴대전화 번호의 형식을 검증하는 것은 간단합니다. 먼저, PhoneNumberKit을 import하고 PhoneNumberKit 인스턴스를 생성합니다:

import PhoneNumberKit

let phoneNumberKit = PhoneNumberKit()

다음으로, 휴대전화 번호를 검증하고 싶은 문자열을 PhoneNumberKit의 parse(_:withRegion:) 메서드에 전달합니다. withRegion 매개변수는 휴대전화 번호의 국가/지역을 나타냅니다. 일반적으로 국가 코드 (예: “KR”은 대한민국)를 사용하면 됩니다.

do {
    let phoneNumber = try phoneNumberKit.parse("+821012345678", withRegion: "KR")
    print("올바른 휴대전화 번호입니다.")
} catch {
    print("올바르지 않은 휴대전화 번호입니다.")
}

검증이 성공하면, 해당 문자열은 올바른 휴대전화 번호로 간주됩니다. 그렇지 않으면 parse(_:withRegion:) 메서드는 예외를 throw하며, 예외를 적절히 처리해야 합니다.

휴대전화 번호의 형식 변환하기

PhoneNumberKit을 사용하여 휴대전화 번호의 형식을 변환하는 것도 매우 간단합니다. format(_:toType:) 메서드를 사용하면 됩니다.

let phoneNumber = try phoneNumberKit.parse("+821012345678", withRegion: "KR")
let formattedPhoneNumber = phoneNumberKit.format(phoneNumber, toType: .international)
print(formattedPhoneNumber)

위의 예제에서는 휴대전화 번호를 국제 형식으로 변환하여 출력합니다. 출력 결과는 “+82 10-1234-5678”과 같이 표시됩니다.

추가 기능

PhoneNumberKit은 휴대전화 번호의 다양한 특성을 추출하는 기능도 제공합니다. 예를 들어, countryCode(for:) 메서드를 사용하여 휴대전화 번호에서 국가 코드를 추출할 수 있습니다.

let phoneNumber = try phoneNumberKit.parse("+821012345678", withRegion: "KR")
let countryCode = phoneNumberKit.countryCode(for: phoneNumber)
print(countryCode)

출력 결과는 “82”와 같이 표시됩니다.

자세한 내용은 PhoneNumberKit GitHub 저장소를 참조하시기 바랍니다.