开发者

NSString character position

开发者_如何学PythonNSString *url = @"http://stackoverflow.com/questions/ask";

How can I get the character position of the 4th "/" ?


If you're just trying to get the last part of the url, you should be able to use this:

NSArray* items = [url componentsSeparatedByString:@"/"];

To get the index of the last '/' character:

NSRange range = [url rangeOfString:@"/" options:NSBackwardsSearch];

get the index value from range.location

To find the index of the fourth '/' character from the url:

int count = 0;
int index = -1;
for (unsigned int i=0; i < [url length]; ++i) {
    if ([url characterAtIndex:i] == '/') {
        ++count;
        if (count == 4) {
            index = i;
            break;
        }
    }
}


Usually you don't have to get the index of the letter /. You can just use many convenience methods defined in NSURL, see this Apple reference. I would do

  NSURL* url=[NSURL URLWithString:@"http://stackoverflow.com/questions/ask"];
  NSString* last=[url lastPathComponent]; // last is now @"ask"


another way you can use

[url rangeOfString:@"/" options:NSBackwardsSearch].location

hope it help!


I editted my answer after understanding your problem.

The answer of Hitesh it almost correct, you just need to do a little bit more

NSArray* items = [url componentsSeparatedByString:@"/"];

if ([items count] > 4) {
   NSString *string = [items objectAtIndex:4];
}
0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜