Computer >> 컴퓨터 >  >> 프로그램 작성 >> IOS

Swift의 이메일 및 전화 확인

<시간/>

신속한 언어로 이메일과 전화를 검증하기 위해 if 조건과 같은 여러 조건문을 사용할 수 있지만 이는 긴 프로세스이며 이메일 검증을 위해 50-100개의 if 문이 포함될 수 있습니다.

따라서 조건부 대신 정규식을 사용합니다. Swift는 정규 표현식을 평가하고 테스트하는 데 사용할 수 있는 NSPredicates를 제공합니다.

정규 표현식을 사용하여 동일한 작업을 수행하는 방법을 살펴보겠습니다.

프로젝트 전체에서 사용할 String 클래스 또는 UIViewController의 확장으로 사용할 수 있는 함수를 만들 것입니다.

프로젝트의 모든 클래스에 다음 코드를 추가하거나 별도의 swift 클래스를 만들어 확장 프로그램을 추가하세요.

extension String {
   var isValidEmail: Bool {
      let regularExpressionForEmail = "[A-Z0-9a-z._%+-]+@[A-Za-z0-9.-]+\\.[A-Za-z]{2,64}"
      let testEmail = NSPredicate(format:"SELF MATCHES %@", regularExpressionForEmail)
      return testEmail.evaluate(with: self)
   }
   var isValidPhone: Bool {
      let regularExpressionForPhone = "^\\d{3}-\\d{3}-\\d{4}$"
      let testPhone = NSPredicate(format:"SELF MATCHES %@", regularExpressionForPhone)
      return testPhone.evaluate(with: self)
   }
}

같은 것을 사용할 수 있습니다

override func viewDidLoad() {
   super.viewDidLoad()
   print("11f".isValidEmail)
   print("abc@xuyz.com".isValidEmail)
   print("8892".isValidPhone)
   print("998-877-2211".isValidPhone)
}

위의 코드를 실행하면 다음과 같은 결과가 나옵니다.

false
true
false
true


Swift의 이메일 및 전화 확인