2013-12-23 13 views
1

我有一個字符串格式的日期,如:2013年3月9日,2013年10月15日等。在iphone中大寫字符串

我該如何將它轉換爲2013年3月9日,2013年10月15日?

我做了這樣的:[str capitalizedString]但它也將大寫T從th。

+0

其中str的你需要利用 –

+0

@ Anbu.Karthik,只有第一個字母,使其僅上月在以下日期格式的基礎上,月份。 – user2893370

回答

0

如果字符串格式同上:那麼你可以做這樣的方式:

NSString *yourString = @"9th march 2013,15th october 2012"; 
NSArray *array = [yourString componentsSeparatedByString:@","]; 

NSMutableArray *finalArray = [[NSMutableArray alloc]init]; 

for (int i =0 ; i < [array count]; i++) { 

    NSString *innerStr = [array objectAtIndex:i]; 

    NSArray *newArray = [innerStr componentsSeparatedByString:@" "]; 

    NSString *monthStr = [newArray objectAtIndex:1]; 

    monthStr = [[[monthStr substringToIndex:1]uppercaseString]stringByAppendingString:[monthStr substringFromIndex:1]]; 

    NSString *finalString = [NSString stringWithFormat:@"%@ %@ %@", [newArray objectAtIndex:0],monthStr,[newArray objectAtIndex:2]]; 

    [finalArray addObject:finalString]; 
} 

NSLog(@"%@",finalArray); 

可以最終通過字符串遍歷到finalArray存入NSString。或者在上面的循環中。

0

你可以不喜歡它:

- (NSString *)changeMonthToCapital:(NSString *)str 
{ 
    // You need to do proper exception handling 
    NSMutableArray *components = [[str componentSeparatedBy:@" "] mutableCopy]; 
    NSString *newTxt   = [components objectAtIndex:1]; 
    NSString *changedTxt  = [newTxt stringByReplacingCharactersInRange:NSMakeRange(0,1) withString:[[newTxt substringToIndex:1] uppercaseString]]; 
    [components replaceObjectAtIndex:1 withObject:changedTxt]; 
    str = [components componentsJoinedByString:@" "]; 
    return str; 
} 

你可以把它想:

[self changeMonthToCapital:@"9th march 2013"]; 
1

假設這是你的下面的字符串。

NSString *str= @"9th march 2013, 15th October 2013"; 
NSString *str1=[str stringByReplacingCharactersInRange:NSMakeRange(0, 5) withString:[[str substringWithRange:NSMakeRange(0, 5)]uppercaseString]]; 
NSString *str2=[str1 stringByReplacingCharactersInRange:NSMakeRange(0, 3) withString:[[str substringWithRange:NSMakeRange(0, 3)]lowercaseString]]; 
NSLog(@"%@",str2); 

輸出: - - :

9th March 2013, 15th October 2013 
+1

沒有其他選擇範圍的方法,我也在嘗試,並以此結束 –