如何从NSRange中提取整数值?

时间:2012-08-27 14:50:16

标签: objective-c integer nsrange

我有一个NSRange,需要将一个字符串分成两个子串,在这个NSRange的两侧。如何从NSRange中获取整数值(如索引)?

2 个答案:

答案 0 :(得分:4)

NSRange struct由两个整数组成 - locationlength

typedef struct _NSRange {
    NSUInteger location;
    NSUInteger length;
} NSRange;

看起来locationlocation+length是您要查找的两个表达式 - 左侧和右侧子字符串的范围如下:

NSRange prefixRange = NSMakeRange(0, myRange.location);
NSUInteger pos =myRange.location+myRange.length;
NSRange suffixRange = NSMakeRange(pos, myString.length - pos);

答案 1 :(得分:0)

我知道这个问题很老,但在 Swift 4 (也许更早),upperBound上有新的lowerBoundNSRange便利属性:< / p>

print(myRange) // Range: {13, 4}    
range.lowerBound // 13
range.upperBound // 17

希望这有助于其他人。