我想从NSString中的某个地方获取一个字符。我希望结果是一个NSString。
这是我用来在索引中获取单个字符的代码:
[[s substringToIndex:i] substringToIndex:1]有没有更好的方法呢?
发布于 2010-10-01 13:27:57
这也将检索索引i处的一个字符作为NSString,并且您只使用了一个NSRange结构,而没有使用额外的NSString。
NSString * newString = [s substringWithRange:NSMakeRange(i, 1)];发布于 2013-09-09 09:41:40
如果你只想从一个NSString中得到一个字符,你可以试试这个。
- (unichar)characterAtIndex:(NSUInteger)index;如下所示:
NSString *originalString = @"hello";
int index = 2;
NSString *theCharacter = [NSString stringWithFormat:@"%c", [originalString characterAtIndex:index-1]];
//returns "e".发布于 2010-10-01 13:39:29
你的建议只适用于像ASCII这样的简单字符。NSStrings存储unicode,如果你的字符有几个unichars长,那么你可能会以胡言乱语结束。使用
- (NSRange)rangeOfComposedCharacterSequenceAtIndex:(NSUInteger)index;如果你想确定你的角色有多少个独角兽。我使用它来遍历我的字符串,以确定字符边框出现的位置。
完全支持unicode是一项很大的工作,但这取决于您使用的语言。我看到许多亚洲文本,所以大多数字符从一个空间溢出,所以这是我需要做的工作。
https://stackoverflow.com/questions/3836670
复制相似问题