`isEqualToString`中的通配符URL

时间:2013-05-23 17:51:51

标签: ios objective-c url wildcard

所以我有一个检查URL的方法,只允许在Web视图中加载特定的URL。

- (BOOL)webView:(UIWebView *)webView shouldStartLoadWithRequest:(NSURLRequest *)request navigationType:(UIWebViewNavigationType)navigationType
{
    NSString *full = [request.URL absoluteString];

    if ([full isEqualToString:@"http://cheese.com/example1"] || [full isEqualToString:@"http://cheese.com/example2"]
        || [full isEqualToString:@"http://cheese.com/example3"]
        **|| [full isEqualToString:@"http://cheese.com/*"]**

        ) {
        NSLog(@"URL is %@, good to go!", full);
        return YES;
    }
    else
        NSLog(@"URL is %@, not going to load.", full);
        return NO;


}

我的问题是,在第三个示例http://cheese.com/example/*中,我正在尝试加载可能会弹出的所有内容来代替*。每次都不一样。是否有某种符号或任何方式让它在这些检查中加载任何东西?

3 个答案:

答案 0 :(得分:2)

你可以在NSString上使用hasPrefix

[full hasPrefix:@"http://cheese.com/"]

答案 1 :(得分:2)

[full hasPrefix::@"http://cheese.com/"]应该做你想做的事。

答案 2 :(得分:1)

How to check if NSString begins with a certain character

前缀检查是否足够?这样您就可以检查开始而不必担心字符串的其余部分。