我对substringWithRange函数有一个奇怪的问题。
我有一个长度为22的NSString。
当我这样做时:
NSString *result = [myString substringWithRange:NSMakeRange(3, 21)];
一切都很好。但是,当我尝试从中间获取一些东西时,例如:
NSString *result = [myString substringWithRange:NSMakeRange(11, 14)];
它给出了超出范围的异常。
'NSRangeException',原因:'*-[NSCFString substringWithRange:]:范围或索引超出范围'
那怎么了
最佳答案
NSRange不是“从索引到索引”。是“从索引到长度”。
为什么第一个可行?我不知道。我猜实际上您的字符串不是22个字符长,而是24个字符。
关于iphone - substringWithRange收到一个奇怪的错误,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/5056930/