[swift] PhoneNumberKit을 사용하여 특정 국가의 전화번호 길이 검증하기
휴대폰 번호는 각 국가마다 다른 길이와 형식을 가지고 있습니다. Swift에서 PhoneNumberKit이라는 라이브러리를 사용하면 이러한 국가별 전화번호 형식을 쉽게 확인할 수 있습니다. 이번 글에서는 PhoneNumberKit을 사용하여 특정 국가의 전화번호의 길이를 검증하는 방법에 대해 알아보겠습니다.
PhoneNumberKit 라이브러리 설치
PhoneNumberKit은 Swift에서 전화번호 관련 작업을 쉽게 처리할 수 있도록 도와주는 라이브러리입니다. 먼저 PhoneNumberKit을 프로젝트에 추가해야합니다.
Swift Package Manager를 사용하는 경우:
- Xcode에서 프로젝트를 엽니다.
- File → Swift Packages → Add Package Dependency…를 선택합니다.
- 패키지 URL 필드에
https://github.com/marmelroy/PhoneNumberKit.git
을 입력하고 Next를 클릭합니다. - Rules를 유지하고 Finish를 클릭하여 패키지를 추가합니다.
CocoaPods를 사용하는 경우:
- 터미널을 열고 프로젝트 디렉토리로 이동합니다.
Podfile
을 생성하여 편집합니다.- 다음과 같이
pod 'PhoneNumberKit'
을 추가합니다:
target 'YourTargetName' do
use_frameworks!
pod 'PhoneNumberKit'
end
- 터미널에서 다음 명령을 실행하여 라이브러리를 설치합니다:
pod install
국가별 전화번호 길이 검증하기
PhoneNumberKit을 사용하기 위해 다음 코드를 프로젝트에 추가합니다:
import PhoneNumberKit
let phoneNumberKit = PhoneNumberKit()
let phoneNumber = "+821012345678" // 검증할 전화번호 입력
let region = "KR" // 검증할 국가 코드 입력
do {
let parsedPhoneNumber = try phoneNumberKit.parse(phoneNumber, withRegion: region)
if phoneNumberKit.isValidNumber(parsedPhoneNumber) {
print("전화번호가 유효합니다.")
let numberType = phoneNumberKit.getNumberType(parsedPhoneNumber)
print("전화번호 유형: \(numberType)")
let formattedNumber = phoneNumberKit.format(parsedPhoneNumber, toType: .e164)
print("포맷된 전화번호: \(formattedNumber)")
} else {
print("전화번호가 유효하지 않습니다.")
}
} catch {
print("전화번호 파싱에 실패하였습니다.")
}
위 코드에서 전화번호는 "+821012345678"
과 같이 “+국가코드 전화번호” 형식으로 입력되어야합니다. 검증할 국가의 국가 코드는 region
변수에 입력해야합니다.
PhoneNumberKit
의 parse
메서드를 사용하여 전화번호를 구문 분석하고, isValidNumber
메서드를 사용하여 유효한 전화번호인지 확인할 수 있습니다. 만약 전화번호가 유효하다면, getNumberType
메서드를 사용하여 전화번호의 유형을 확인하고, format
메서드를 사용하여 포맷된 전화번호를 얻을 수 있습니다.
위의 코드에서는 한국(KR
)의 전화번호를 검증하고 있습니다. 다른 국가의 전화번호를 검증하려면 region
변수를 해당 국가의 국가 코드로 변경하면 됩니다.