Get last path part from NSString

前端 未结 7 1059
梦毁少年i
梦毁少年i 2020-12-13 19:20

Hi all i want extract the last part from string which is a four digit number \'03276\' i:e http://www.abc.com/news/read/welcome-new-gig/03276

how can i

相关标签:
7条回答
  • 2020-12-13 19:27

    If the last part of the string is always the same length (5 characters) you could use this method to extract the last part:

    - (NSString *)substringFromIndex:(NSUInteger)anIndex
    

    Use the length of the string to determine the start index.

    Something like this:

    NSString *inputStr = @"http://www.abc.com/news/read/welcome-new-gig/03276";
    NSString *newStr = [inputStr substringFromIndex:[inputStr length]-5];
    NSLog(@"These are the last five characters of the string: %@", newStr);
    

    (Code not tested)

    0 讨论(0)
  • 2020-12-13 19:28

    Since *nix uses the same path separators as URL's this will be valid as well.

    [@"http://www.abc.com/news/read/welcome-new-gig/03276" lastPathComponent]
    
    0 讨论(0)
  • 2020-12-13 19:35

    If you know the length of the number, and it's not gonna change, it can be as easy as:

    NSString *result = [string substringFromIndex:[string length] - 4];
    
    0 讨论(0)
  • 2020-12-13 19:36

    If you know how many characters you need, you can do something like this:

    NSString *string = @"http://www.abc.com/news/read/welcome-new-gig/03276";
    NSString *subString = [string substringFromIndex:[string length] - 5];
    

    If you just know that it's the part after the last slash, you can do this:

    NSString *string = @"http://www.abc.com/news/read/welcome-new-gig/03276";
    NSString *subString = [[string componentsSeparatedByString:@"/"] lastObject];
    
    0 讨论(0)
  • 2020-12-13 19:36
    NSString *str = @"http://www.abc.com/news/read/welcome-new-gig/03276";  
    NSArray *arr = [str componentSeparatedBy:@"gig/"];  
    NSString *strSubStringDigNum = [arr objectAtIndex:1];  
    

    strSubStringDigNum will have the value 03276

    0 讨论(0)
  • 2020-12-13 19:43

    You can also use

    NSString *sub = [@"http://www.abc.com/news/read/welcome-new-gig/03276" lastPathComponent];
    
    0 讨论(0)
提交回复
热议问题