sal*_*hni 6 regex objective-c nsregularexpression
我试图用这种方法验证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];
}
Run Code Online (Sandbox Code Playgroud)
它不起作用.我认为问题在于正则表达式.
Par*_*fna 13
您可以使用+ (id)URLWithString:(NSString *)URLString
方法NSURL
,nil
如果字符串格式错误,则返回.
使用if (URL && URL.scheme && URL.host)
检查URL.
试试这个..
- (BOOL) validateUrl: (NSString *) candidate {
NSString *urlRegEx =
@"(http|https)://((\\w)*|([0-9]*)|([-|_])*)+([\\.|/]((\\w)*|([0-9]*)|([-|_])*))+";
NSPredicate *urlTest = [NSPredicate predicateWithFormat:@"SELF MATCHES %@", urlRegEx];
return [urlTest evaluateWithObject:candidate];
}
Run Code Online (Sandbox Code Playgroud)
它可能会帮助你.