在 mutablestring 的索引 2 和 8 处添加空格

Adding whitespaces at index 2 and 8 of mutablestring

我从数据库中获取一个字符串,例如,As1234512345.I 想在索引 2 和 8 处添加 spaces,然后想在文本字段中将此字符串显示为字符串 "As 12345 12345"。我知道这可以在 shouldchangecharacterinrange.But 中完成我想为它创建自己的方法,以便它接受字符串和 returns 一个在需要时添加 spaces 的字符串 positions.How z 它 possible.Kindly 提前帮助一些代码 snippet.Thanks。

-(NSMutableString *)makeStringForTextfield:(UITextField*)textField withString:(NSString*)string
{
   NSMutableString *mutString=[string mutableCopy];
    NSLog(@"The value of mutablestring %@",mutString);
    if(string.length!=0)
    {

            [mutString insertString:@" " atIndex:2];
            [mutString insertString:@" " atIndex:8];
    }
    else
    {
        NSLog(@"the value of string is %@",string);
    }
    return mutString;


}

我试过上面的代码。在从数据库中获取数据后直接显示数据的情况下它工作正常。但是当我编辑文本时,它没有在 8 索引位置添加 space 这是真实的问题。

试试这个:

-(NSString*) returnStringForTextfield:(NSString*) str{
    NSString* newStr = @"";
    if(str.length>=8){
         newStr = [NSString stringWithFormat:@"%@ %@ %@", [str substringWithRange:NSMakeRange(0, 2)], [str substringWithRange:NSMakeRange(2, 5)], [str substringWithRange:NSMakeRange(7,str.length-7)]];
    }
    return newStr;
}

将此方法用作-

NSLog(@"%@", [self returnStringForTextfield:@"As1234512345"]); //As 12345 12345