我有一个数组,我试图从nsarray中删除括号
这是我的输出( ( “2013-06-15 02:00” ) ( “2013-06-16 02:00” ) ( “2013-06-18 02:00” ) ( “2013-06-19 02:00” ) ( “2013-06-19 02:00” ) )
但我想删除内括号并输出为 ( “2013-06-15 02:00”, “2013-06-16 02:00”, “2013-06-18 02:00”, “2013-06-19 02:00”, “2013-06-19 02:00” )
任何人请帮我解决这个问题
答案 0 :(得分:5)
我正在回答这是一个简单的NSArray
-
你的阵列是这样的 -
NSArray *array = @[@[@"2013-06-15 02:00"], @[@"2013-06-16 02:00"], @[@"2013-06-18 02:00"], @[@"2013-06-19 02:00"], @[@"2013-06-19 02:00"]];
NSLog(@"\n%@",array);
然后输出这个数组: -
( ( “2013-06-15 02:00” ) ( “2013-06-16 02:00” ) ( “2013-06-18 02:00” ) ( “2013-06-19 02:00” ) ( “2013-06-19 02:00” ) )
现在让我们过滤这个数组 -
NSMutableArray *newArray = [[NSMutableArray alloc] init];
for(int i=0; i<[array count]; i++)
{
[newArray addObject:array[i][0]];
}
NSLog(@"\n%@", newArray);
输出是: - ( “2013-06-15 02:00”, “2013-06-16 02:00”, “2013-06-18 02:00”, “2013-06-19 02:00”, “2013-06-19 02:00” )
答案 1 :(得分:1)
使用objectAtIndex如下:
[yourArray objectAtIndex:i]
其中i代表索引,如果你想要第一个字符串然后使用0,第二个然后是1,....等等。
希望这对你有所帮助。
答案 2 :(得分:0)
因为我处于一种canihazecode心情:
NSArray *array = ...
NSMutableArray *cleanedArray = [NSMutableArray arrayWithCapacity:[array count]];
for (id object in array) {
if ([object isKindOfClass:[NSArray class]]) {
if ([object count]) {
[cleanedArray addObject:object[0]];
}
else {
// empty array
}
}
else if ([object isKindOfClass:[NSString class]]) {
NSRange openBracket = [object rangeOfString:@"("];
NSString *temp = [object stringByReplacingCharactersInRange:openBracket withString:@""];
NSRange closeBracket = [temp rangeOfString:@")" options:NSBackwardsSearch];
temp = [temp stringByReplacingCharactersInRange:closeBracket withString:@""];
[cleanedArray addObject:temp];
}
else {
// unknown class
}
}
您可能想知道对象是字符串还是数组,并删除多余的部分。