我正在尝试使用此方法验证URL:

代码:

- (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];

}

它不起作用。我认为问题在于正则表达式。

最佳答案

您可以使用+ (id)URLWithString:(NSString *)URLString NSURL 方法,如果字符串格式错误,则该方法将返回nil

使用if (URL && URL.scheme && URL.host)检查URL。

关于objective-c - URL验证(Objective-C),我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/8224568/

10-14 22:24