我猜我有一个看起来像的NSArray:
(
"zad0xsis|mac",
"+zad0xsis",
@someone,
%another-one",
~admin,
)
如何检查NSString是否等于阵列上的某些NSString(但总是删除前面的+,@,〜,%符号)?我虽然使用for
循环,但不知道如何
答案 0 :(得分:2)
引用的其他方法非常好。另一种选择是利用NSArray基于块的枚举方法。基于块的方法允许您在正在开发的平台上利用并发性,并且是未来的方式。我想到的方法如下:
所以对于你的情况你可以使用以下内容:
NSUInteger theIndex=NSNotFound;
theIndex=[theArray indexOfObjectWithOptions:NSEnumerationConcurrent passingTest:^(id obj, NSUInteger, idx, BOOL *stop){
if ([obj rangeOfString: aString]!=NSNotFound]){
*stop=YES;
return YES;
}
return NO;
}];
解决方案也在这里讨论:How to check if an NSString contains one of the NSStrings in an NSArray?
祝你好运答案 1 :(得分:1)
您可以使用rangeOfString
中的NSString Class
。
BOOL exists = NO;
for (NSString *what in myArray)
{
if ([someSearchString rangeOfString:what].location != NSNotFound) {
exists = YES;
break;
}
}
答案 2 :(得分:0)
最后使用
for(int i=0; i<[self.userArray count]; i++) {
NSString *user = [self.userArray objectAtIndex:i];
NSLog(@"%@", user);
}
这让我得到了我正在寻找的索引