查找string中字符的索引

我有一个stringNSString *Original=@"88) 12-sep-2012";Original=@"8) blablabla";

我只想打印“)”之前的字符,所以如何find字符“)”的索引。 或者我怎么能这样做?

提前致谢。

 NSString *str = [[yourString componentsSeparatedByString:@")"] objectAtIndex:0]; 

你可以像这样find字符“)”的索引:

 NSString *Original=@"88) 12-sep-2012"; NSRange range = [Original rangeOfString:@")"]; if(range.location != NSNotFound) { NSString *result = [Original substringWithRange:NSMakeRange(0, range.location)]; } 

你可以用下面的代码来查看“)”之前的字符

  // this would split the string into values which would be stored in an array NSArray *splitStringArray = [yourString componentsSeparatedByString:@")"]; // this would display the characters before the character ")" NSLog(@"%@", [splitStringArray objectAtIndex:0]); 

尝试下面的代码来获取string中的特定字符的索引: –

 NSString *string = @"88) 12-sep-2012"; NSCharacterSet *charSet = [NSCharacterSet characterSetWithCharactersInString:@")"]; NSRange range = [string rangeOfCharacterFromSet:charSet]; if (range.location == NSNotFound) { // ... oops } else { NSLog(@"---%d", range.location); // range.location is the index of character ) } 

并获取string之前)字符使用此: –

 NSString *str = [[string componentsSeparatedByString:@")"] objectAtIndex:0]; 
 NSUInteger index = [Original rangeOfString:@")"]; NSString *result = [Original substringWithRange:NSMakeRange(0, index)]; 

另一个解决scheme:

 NSString *Original=@"88) 12-sep-2012"; NSRange range = [Original rangeOfString:@")"]; NSString *result = Original; if (range.location != NSNotFound) { result = [Original substringToIndex:range.location]; } NSLog(@"Result: %@", result);