gpt4 book ai didi

objective-c - 过滤 NSArray 字符串元素

转载 作者:太空狗 更新时间:2023-10-30 03:47:02 27 4
gpt4 key购买 nike

所以,基本上我有一个 NSArray

我想在过滤后得到一个包含初始数组内容的数组,例如不以给定的前缀开头。

它认为使用filteredArrayUsingPredicate: 是最好的方法;但我不确定我该怎么做...

到目前为止,这是我的代码(实际上在 NSArray 类别中):

- (NSArray*)filteredByPrefix:(NSString *)pref
{
NSMutableArray* newArray = [[NSMutableArray alloc] initWithObjects: nil];

for (NSString* s in self)
{
if ([s hasPrefix:pref]) [newArray addObject:s];
}

return newArray;
}

这是对 Cocoa 最友好的方法吗?我想要的是尽可能快的东西......

最佳答案

这是使用 filteredArrayUsingPredicate: 的更简单的方法:

NSArray *filteredArray = [anArray filteredArrayUsingPredicate:[NSPredicate predicateWithFormat:@"SELF like  %@", [pref stringByAppendingString:@"*"]];

这会通过检查它是否与由前缀后跟通配符组成的字符串匹配来过滤数组。

如果您想不区分大小写地检查前缀,请改用like[c]

关于objective-c - 过滤 NSArray 字符串元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10008278/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com