2014-07-11 2 views
0

제출을 수락하기 전에 URL의 유효성을 검사하는 앱에서 작업합니다.고급 URL 문자열로 URL 유효성 확인

추시 코드는 www.google.com 같은 간단한 URL을 받아들이지 만 Apple documentation에서 인용 등

- (BOOL) validateUrl: (NSString *) candidate { 
    NSString *urlRegEx = 
    @"((\\w)*|([0-9]*)|([-|_])*)+([\\.|/]((\\w)*|([0-9]*)|([-|_])*))+"; 
    NSPredicate *urlTest = [NSPredicate predicateWithFormat:@"SELF MATCHES %@", urlRegEx]; 
    return [urlTest evaluateWithObject:candidate]; 
} 
+1

표면을 긁적입니다. http://stackoverflow.com/q/161738/427083 – Mundi

답변

0

www.google.com/?test-test 같은보다 복잡한 URL을 가치가되지 않습니다

반환 값 URLString으로 초기화 된 NSURL 객체입니다. 문자열의 형식이 잘못되었거나 nil 인 경우 nil을 반환합니다.

실제로 NSURL 개체를 만들려고하여 URL의 유효성을 테스트 할 수 있습니다.

NSString* some_url1 = ...// your input 
NSURL* u1 = [NSURL URLWithString:some_url1]; 
BOOL ok = u1 != nil;