Objective c 插入一个“\";一串

Objective c 插入一个“\";一串,objective-c,string,Objective C,String,例如,如果我以以下字符串开头: NSString * labeltext = @"abcdefghijk"; 我希望将此字符串更改为“abc\n def\n ghi\n jk” 我希望以3的间隔插入@“\n” 如何实现这一点?使用NSMutableString,然后通过原始NSString进行for循环 NSMutableString *buffer = [[NSMutableString alloc] init]; int len = [labelText length]; for (i =

例如,如果我以以下字符串开头:

NSString * labeltext = @"abcdefghijk";
我希望将此字符串更改为“abc\n def\n ghi\n jk”

我希望以3的间隔插入@“\n”


如何实现这一点?

使用NSMutableString,然后通过原始NSString进行for循环

NSMutableString *buffer = [[NSMutableString alloc] init];
int len = [labelText length];
for (i = 0; i < len; i++) {
    NSRange charAt = NSMakeRange(i,1);
    [buffer appendString: [labelText substringWithRange: charAt]];
    if ((i % 3) == 2) {
        [buffer appendString: @"\n"];
    }
}
labelText = (NSString *)buffer;
NSMutableString*buffer=[[NSMutableString alloc]init];
int len=[标签文本长度];
对于(i=0;i
上面的示例是纯Objective-C。这也可以使用C实现。将NSString转换为cstring,然后在数组中循环。比如说,

const char *str = [labelText UTF8String];
int len = strlen(str) - 1;
int pos = 0;
char buffer[(len * 2) + 1];
for (i = 0; i < len; i++) {
    char ch = str[i];
    buffer[pos] = ch;
    pos++;
    if ((i % 3) == 2) {
        buffer[pos] = '\n';
        pos++;
    }
}
buffer[pos] = '\0';
labelText = [NSString stringWithFormat: @"%s", buffer];
const char*str=[labelText UTF8String];
int len=strlen(str)-1;
int pos=0;
字符缓冲区[(len*2)+1];
对于(i=0;i
使用NSMutableString,然后使用for循环遍历原始NSString

NSMutableString *buffer = [[NSMutableString alloc] init];
int len = [labelText length];
for (i = 0; i < len; i++) {
    NSRange charAt = NSMakeRange(i,1);
    [buffer appendString: [labelText substringWithRange: charAt]];
    if ((i % 3) == 2) {
        [buffer appendString: @"\n"];
    }
}
labelText = (NSString *)buffer;
NSMutableString*buffer=[[NSMutableString alloc]init];
int len=[标签文本长度];
对于(i=0;i
上面的示例是纯Objective-C。这也可以使用C实现。将NSString转换为cstring,然后在数组中循环。比如说,

const char *str = [labelText UTF8String];
int len = strlen(str) - 1;
int pos = 0;
char buffer[(len * 2) + 1];
for (i = 0; i < len; i++) {
    char ch = str[i];
    buffer[pos] = ch;
    pos++;
    if ((i % 3) == 2) {
        buffer[pos] = '\n';
        pos++;
    }
}
buffer[pos] = '\0';
labelText = [NSString stringWithFormat: @"%s", buffer];
const char*str=[labelText UTF8String];
int len=strlen(str)-1;
int pos=0;
字符缓冲区[(len*2)+1];
对于(i=0;i