Getting the substring from a certain character in NSString

白昼怎懂夜的黑 提交于 2019-12-03 14:35:39

问题


If I have an NSString that is initially:

"ABCDE*FGHI"

How do I make it turn into

"FGHI"

In other words, everything from the asterisk onwards is kept.

Likewise, how would I turn it into:

"ABCDE"

(everything up to the asterisk is kept)

Thanks


回答1:


NSString *myString = @"ABCDE*FGHI"; 
NSArray *myArray = [myString componentsSeparatedByString:@"*"];
  • key 0 of myArray will contain @"ABCDE"
  • key 1 will contain @"FGHI"

If you want more than one character to be the separator,
use componentsSeparatedByCharactersInSet:

NSString *myString = @"ABCDE*FGHI-JKL"; 
NSArray *myArray = [myString componentsSeparatedByCharactersInSet:[NSCharacterSet characterSetWithCharactersInString:@"*-"]];
  • key 0 of myArray will contain @"ABCDE"
  • key 1 will contain @"FGHI"
  • key 2 will contain @"JKL"



回答2:


NSString *myString = @"ABCDE*FGHI";
NSString *subString = [myString substringWithRange: NSMakeRange(0, [myString rangeOfString: @"*"].location)];



回答3:


NSString *myString = @"ABCDE*FGHI";
NSArray *myArray = [myString componentsSeparatedByString:@"*"];



回答4:


NSString *yourString = @"ABCDE*FGHI";

NSMutableArray * array = [[NSMutableArray alloc] initWithArray:[yourString componentsSeparatedByString:@"*"]];

for(int i =0 ; i < array.count ; i++){
    NSLog(@"- %d : %@ \n",i,[array objectAtIndex:i]);
}


来源:https://stackoverflow.com/questions/3051960/getting-the-substring-from-a-certain-character-in-nsstring

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!