NSString更改格式

时间:2012-05-07 07:36:38

标签: iphone nsstring

我有一个字符串

120505

格式始终如上所述。然而,内容可能会改变。我希望它是:

12-05-05

我该怎么做?

3 个答案:

答案 0 :(得分:6)

 NSMutableString *editedstring = [NSMutableString stringWithString:yourstring];
 [editedstring insertString:@"-" atIndex:2];
 [editedstring insertString:@"-" atIndex:5];

这完全符合您的要求,而不是我建议您阅读以下苹果指南,因为您可以了解更多。

NSString Class Reference

答案 1 :(得分:2)

使用此类方法,供您参考

+(NSString *)getString:(NSInteger)pTemp
{
    NSNumber *number = [NSNumber numberWithInt:pTemp];
    NSNumberFormatter *formatter = [[NSNumberFormatter alloc] init];
    [formatter setGroupingSize:2];
    [formatter setGroupingSeparator:@"-"];
    [formatter setUsesGroupingSeparator:YES];
    NSString *finalString = [formatter stringFromNumber:number];
    [formatter release];
    return finalString;
}

根据您的要求更改此方法,它将帮助您处理超过6个字符的字符串。

此功能再次仅供您参考,亲爱的。

快乐的编码。

答案 2 :(得分:0)

如果您将输入字符串作为名为in_string的NSString变量,那么您可以使用下面的代码段在名为out_string的变量中生成输出:

 NSString* out_string = [NSString stringWithFormat: @"%@-%@-%@", [in_string substringToIndex: 2], [in_string substringWithRange: NSRangeMake(2,2)], [in_string substringFromIndex: 4]];