在可变字符串的索引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度位置,其是真正的问题添加的空间。
答
试试这个:
-(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
你尝试过什么? – Signare
你需要方法来分割一个字符串并加入它们,可以用很多方法。尝试其中的一些)扫描仪/范围选项 – Nazir
尝试[self convertString:@“As1234512345”positions:pos]; - (NSString *)convertString:(NSString *)字符串位置:(int)pos {//这里做任何你想要的然后返回字符串} – Signare