在可变字符串的索引2和8处添加空格

在可变字符串的索引2和8处添加空格

问题描述:

我从数据库中获得一个字符串say,As1234512345.I想要在索引2和8处添加空格,然后想要在文本字段上将该字符串显示为字符串“As 12345 12345”。我知道这可以在shouldchangecharacterinrange中完成。但我想为它创建我自己的方法,以便它获取字符串并返回一个字符串,并在所需的位置添加空格。如何z可能。请仔细阅读某些代码片段。感谢提前。在可变字符串的索引2和8处添加空格

-(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度位置,其是真正的问题添加的空间。

+2

你尝试过什么? – Signare

+0

你需要方法来分割一个字符串并加入它们,可以用很多方法。尝试其中的一些)扫描仪/范围选项 – Nazir

+0

尝试[self convertString:@“As1234512345”positions:pos]; - (NSString *)convertString:(NSString *)字符串位置:(int)pos {//这里做任何你想要的然后返回字符串} – Signare

试试这个:

-(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 
+0

它的鞋号数据工作正常,但在编辑时违反验证,并且不会在8索引位置添加空间。 – Prez

+0

当您开始编辑文本字段中的文本时,它是否违反验证? –

+0

是的..它违反了在索引2和8处添加空间的呼吁,同时开始编辑文本字段中的文本 – Prez