NSString
メソッドのように、次のよう-substringWithRange:
に-rangeOfString:options:range:
述べています。
重要: aRange の一部が文字列の末尾を超えている場合、NSRangeException が発生します。
範囲 (string.length, 0) が文字列の終わりを超えているようです。ただし、[string substringWithRange:NSMakeRange(string.length, 0)]
発生させずNSRangeException
に空の文字列を返します。したがって、 (string.length, 0) が有効な範囲かどうかはわかりません。
比較すると、 と の両方[string substringWithRange:NSMakeRange(string.length + 1, 0)]
で[string substringWithRange:NSMakeRange(string.length, 1)]
NSRangeException が発生します。しかし、 (string.length, 0) が重要なポイントのように見える間、それらは非常に明確に終わりを超えています。