1

我有一个数组,我试图从 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")

任何人请帮我解决这个问题

4

3 回答 3

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")

于 2013-06-15T05:47:02.267 回答
1

使用 objectAtIndex 如下:

[yourArray objectAtIndex:i]

其中 i 表示索引,如果您想要第一个字符串,则使用 0,第二个然后 1,....等。

希望这可以帮助你。

于 2013-06-15T05:32:29.717 回答
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
    }
}

您可能想弄清楚您的对象是字符串还是数组,并删除多余的部分。

于 2013-06-15T05:44:58.847 回答