NSString的形式--可变字符串--改方法Alter

前面我们讲解了可变形字符串的前三种方法, 现在我们来讲最后的一种改方法, 改方法和覆盖的方法有一些类似, 但又比覆盖的方法稍微不同, 它不是直接通过另外定义来进行覆盖的, 是可以通过位置和长度对原来的字符串进行修改覆盖.

下面涉及的方法有:

replaceCharactersInRange: 它的意思就是通过NSMakeRange返回的位置和长度, 对原有的字符串进行修改.

下面是方法使用的简单例子:

#import <Foundation/Foundation.h>

int main(int argc, const char * argv[]) {
    @autoreleasepool {
        NSMutableString *str = [NSMutableString new];
        [str setString:@"0123456789"];
        NSLog(@"
%@", str);
        
        [str replaceCharactersInRange:NSMakeRange(3, 5) withString:@"abcdefg"];
        //通过一个NSMakeRange返回的位置和长度, 把abcdefg这个字符串从第三个, 长度为5的字符串改成abcdefg.
        //通俗点说就是把34567这五个改成abcdefg, 而后面的89就会跟在abcdefg后面.
        
        NSLog(@"
%@", str);

    }
    return 0;
}

未修改前输出的结果:

2014-10-11 17:04:48.799 AlterNSMutableString[1647:303] 
str = 0123456789
Program ended with exit code: 0

修改后输出的结果:

2014-10-11 17:04:48.801 AlterNSMutableString[1647:303] 
str = 012abcdefg89
Program ended with exit code: 0
原文地址:https://www.cnblogs.com/iOSCain/p/4019409.html