是它可以检查基于表达式的条件,目标C

问题描述:

我的阵列arr原本包含以下是它可以检查基于表达式的条件,目标C

[A,B,C,D,E,F,G]; 

现在我想删除A和B和C,我可以做到像以下

[arr enumerateObjectsUsingBlock:^(NSString *name, NSUInteger idx, BOOL *stop) { 
    if ([name isEqualToString:@"A"] || [name isEqualToString:@"B"] || [name isEqualToString:@"C"]); 
     [arr removeObject:name]; 
}]; 

问题:是否可以使用nsexpression来完成。这听起来像定义一个nsexpression包含A和B和C,然后我们删除基于nxpression的元素。

任何想法如何实现这一点。所有评论都欢迎在这里。谢谢。

而不是直接使用NSExpression,请考虑filteredArrayUsingPredicate:NSMutableArrayfilterUsingPredicate:。这将返回一个由谓词过滤的新数组,或根据谓词变异的相同数组。

另外,枚举时改变集合并不是一个好主意。