나는이 방법과 URL을 확인하려고 :URL 검증 (목표 - C)
코드 :
- (BOOL) validateUrl: (NSString *) candidate {
NSString *urlRegEx=
@"((https?|ftp|gopher|telnet|file|notes|ms-help):((//)|(\\\\))+[\w\d:#@%/;$()~_?\+-=\\\.&]*)";
NSPredicate *urlTest = [NSPredicate predicateWithFormat:@"SELF MATCHES %@", urlRegEx];
return [urlTest evaluateWithObject:candidate];
}
그것은하지 않습니다 기능을. 문제는 정규 표현식에 있다고 생각합니다.
나는 그것을 시도했다! 하지만 여전히 작동하지 않습니다! 예 : "ht : //www.yahoo" 이것은 잘 작동합니다! 그리고 그것은 nill을 돌려 보내지 않는다! !! –
RFC 2396에 따라 유효한 UR1입니다. apple 설명서에서 NSURL 개체를 초기화 할 문자열입니다. RFC 2396을 준수하는 URL이어야합니다.이 메서드는 RFC 1738 및 1808에 따라 URLString을 구문 분석합니다. URL을 확인하기 위해 "if (URL && URL.scheme && URL.host)"를 사용합니다. –
RFC 2396은이^(([^ : /? #] +) :)? (// ([^ /? #] *))? ([^? #] *) (\? *))? (# (. *))? 정규식. 자세한 내용은 http://www.ietf.org/rfc/rfc2396.txt –