[스위프트3] 이메일, 패스워드 정규식 검사steemCreated with Sketch.

in #ios6 years ago

스위프트3 개발중 가장 많이 사용하는 이메일, 패스워드 정규식 검사식입니다.
서치중에 제가 필요할 것 같아서 가져왔습니다.
이메일은 기본적으로 사용되는 @.패턴으로 구현되어있고,
패스워드는 최소8자이상, 대문자, 소문자, 숫자 조합인지 검증하게 되어있습니다.

extension String {
    // 이메일 정규식
    func validateEmail() -> Bool {
        let emailRegEx = "^.+@([A-Za-z0-9-]+\\.)+[A-Za-z]{2}[A-Za-z]*$"
        let predicate = NSPredicate(format:"SELF MATCHES %@", emailRegEx)
        return predicate.evaluate(with: self)
    }
    
    // 패스워드
    func validatePassword() -> Bool {
        let passwordRegEx = "^(?=.*[A-Z])(?=.*[0-9])(?=.*[a-z]).{8}$"
        let predicate = NSPredicate(format:"SELF MATCHES %@", passwordRegEx)
        return predicate.evaluate(with: self)
    }
}

참조 : http://ginjo.tistory.com/15
*모든 레퍼런스를 제공해주시는 개발자님들께 항상 감사드립니다.