2012-03-23 39 views
0

我想弄清楚如何精确确定NSString的某个部分,我查看了API,但我似乎无法得到正确的方法组合。Objective-C字符串提取问题

我可以查看每个角色并完成此操作,但我确信这是一种更简单的方法。

我有一个这样的字符串:

NSString *temp = @"1.09 Units"; 

余万只提取单位的一部分,所以我想只是单位的一个字符串结束。我正在寻找一种通用的方式,因此无论单位前有多少单词或单位是否长单词都无关紧要。

所以我想到了寻找单词之间的空格,但还没有成功。

感谢您的任何想法或建议。

+0

获取更多想要拆分的字符串类型的示例可能会有帮助。 – ThomasW 2012-03-23 02:33:17

回答

2

点子:

  • 分割字符串,使用' ' (space)作为分隔符
  • 储存于数组。第二个元素就是你想要的。

代码:

- (NSString*)getSecondPartFrom:(NSString*)str 
{ 
    NSArray* arr = [str componentsSeparatedByString:@" "]; 
    return (NSString*)[arr objectAtIndex:1]; 
} 
+0

我怎么没有看到方法componentsSeparatedByString?认真Apple的文档不是我的朋友。 – Vikings 2012-03-23 02:24:57

+1

@Vikings可可功能......哦,其中有这么多,你很可能会不断遇到新的! ;-) – 2012-03-23 02:26:00

+0

最好使用'[arr objectAtIndex:[arr length] - 1]'。这样,您将始终获得数组中的最后一项,这对于字符串是“2个单位中的1个”还是具有多个空间的任何项都很重要。 – 2012-03-23 06:25:27

-1

您可以使用ComponentSeparated NSString的方法。