Ios 字符串操作:更高级的子字符串
如何从下面的长字符串中提取“19”? 我想这样做,但我想知道,有没有比这更好/更快的方法Ios 字符串操作:更高级的子字符串,ios,objective-c,nsstring,substring,Ios,Objective C,Nsstring,Substring,如何从下面的长字符串中提取“19”? 我想这样做,但我想知道,有没有比这更好/更快的方法 NSString *myString = @"13.5 Points-(19) 38 Points-(50) 50 Points-(215) 4.3 Points-105.8 Points-21"; NSArray *myArray = [myString componentsSeparatedByString:@"-"]; NSString *splitString = [myArray
NSString *myString = @"13.5 Points-(19) 38 Points-(50) 50 Points-(215) 4.3 Points-105.8 Points-21";
NSArray *myArray = [myString componentsSeparatedByString:@"-"];
NSString *splitString = [myArray objectAtIndex:1 ];
NSRange range = [splitString rangeOfString:@")" ];
NSString *newString = [splitString substringToIndex:range.location];
NSString *newString2 = [newString stringByReplacingOccurrencesOfString:@"(" withString:@""];
NSLog(@"newString2: %@", newString2);
试试这个
NSString *myString = @"13.5 Points-(19) 38 Points-(50) 50 Points-(215) 4.3 Points-105.8 Points-21";
NSArray *strArr = [myString componentsSeparatedByCharactersInSet:[NSCharacterSet characterSetWithCharactersInString: @"()"]];
NSLog(@"myString..%@",[strArr objectAtIndex:1]);// myString..19
试试这个
NSString *myString = @"13.5 Points-(19) 38 Points-(50) 50 Points-(215) 4.3 Points-105.8 Points-21";
NSArray *strArr = [myString componentsSeparatedByCharactersInSet:[NSCharacterSet characterSetWithCharactersInString: @"()"]];
NSLog(@"myString..%@",[strArr objectAtIndex:1]);// myString..19
当您只需要原始字符串的一小段时,使用由字符串分隔的组件是非常低效的。您不需要解析整个字符串 解决方案实际上取决于字符串的格式。如果希望子字符串始终位于第一对括号中,则使用
rangeOfString
获取第一个(
和第一个)
会更有效。然后你把这两块之间的那块提取出来
示例(没有任何正确的错误检查):
当您只需要原始字符串的一小段时,使用由字符串分隔的组件是非常低效的。您不需要解析整个字符串 解决方案实际上取决于字符串的格式。如果希望子字符串始终位于第一对括号中,则使用
rangeOfString
获取第一个(
和第一个)
会更有效。然后你把这两块之间的那块提取出来
示例(没有任何正确的错误检查):