Given a String and a Range is there any easy method to get a substring by removing the characters from String which come in the passed Range?
You could get the substring to the start of the range, and the substring from the end of the range, and concatenate them together.
NSString* stringByRemovingRange(NSString* theString, NSRange theRange) {
NSString* part1 = [theString substringToIndex:theRange.location];
NSString* part2 = [theString substringFromIndex:theRange.location+theRange.length];
return [part1 stringByAppendingString:part2];
}
You could also turn it into an NSMutableString, and use the -deleteCharactersInRange:
method which does this exactly.
NSString* stringByRemovingRange(NSString* theString, NSRange theRange) {
NSMutableString* mstr = [theString mutableCopy];
[mstr deleteCharactersInRange:theRange];
return [mstr autorelease];
}
This should also do the trick:
NSString *result = [baseString stringByReplacingCharactersInRange:range withString:@""];
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With