본문 바로가기
iOS/Objective-C

Objective C email 형식 확인하기

by DnaJ 2019. 12. 15.
반응형

Objective C email 형식 확인하기

 

 

- (BOOL)checkValidEmail:(NSString*)email stricterFilter:(BOOL)stricterFilter {

    BOOL result = NO;

    

    if (email == nil) {

        return result;

    }

 

    NSString *stricterFilterString = @"[A-Z0-9a-z._%+-]+@[A-Za-z0-9.-]+\\.[A-Za-z]{2,4}";

    NSString *laxString = @".+@.+\\.[A-Za-z]{2}[A-Za-z]*";

    NSString *emailRegex = stricterFilter ? stricterFilterString : laxString;

    NSPredicate *emailTest = [NSPredicate predicateWithFormat:@"SELF MATCHES %@", emailRegex];

    

    result = [emailTest evaluateWithObject:email];

    

    return result;

}

 

stricterFilter 는 좀더 엄격한 기준을가지고 메일 형식을 확인하는 flag다.

필요에따라 아래와 같이 stricterFilter flag를 삭제하고 해도 무방하다.

 

- (BOOL)checkValidEmail:(NSString*)email  {

    BOOL result = NO;

    

    if (email == nil) {

        return result;

    }

 

    NSString *stricterFilterString = @"[A-Z0-9a-z._%+-]+@[A-Za-z0-9.-]+\\.[A-Za-z]{2,4}";

    NSPredicate *emailTest = [NSPredicate predicateWithFormat:@"SELF MATCHES %@", stricterFilterString];

    

    result = [emailTest evaluateWithObject:email];

    

    return result;

}

반응형

댓글