我有一个字符串格式的日期,如:2013年3月9日,2013年10月15日等。在iphone中大写字符串
我该如何将它转换为2013年3月9日,2013年10月15日?
我做了这样的:[str capitalizedString]
但它也将大写T从th。
我有一个字符串格式的日期,如:2013年3月9日,2013年10月15日等。在iphone中大写字符串
我该如何将它转换为2013年3月9日,2013年10月15日?
我做了这样的:[str capitalizedString]
但它也将大写T从th。
如果字符串格式同上:那么你可以做这样的方式:
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
。或者在上面的循环中。
你可以不喜欢它:
- (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"];
假设这是你的下面的字符串。
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
没有其他选择范围的方法,我也在尝试,并以此结束 –
其中str的你需要利用 –
@ Anbu.Karthik,只有第一个字母,使其仅上月在以下日期格式的基础上,月份。 – user2893370