Vì vậy, về cơ bản tôi có một số NSArray
.Lọc các phần tử chuỗi NSArray
Tôi muốn lấy một mảng có nội dung của mảng ban đầu sau khi đã lọc các mảng đó, ví dụ: KHÔNG bắt đầu bằng một tiền tố đã cho.
Nó cho rằng sử dụng filteredArrayUsingPredicate:
là cách tốt nhất; nhưng tôi không chắc chắn về cách tôi có thể làm điều đó ...
Đây là mã của tôi cho đến nay (trong một thể loại NSArray
thực tế):
- (NSArray*)filteredByPrefix:(NSString *)pref
{
NSMutableArray* newArray = [[NSMutableArray alloc] initWithObjects: nil];
for (NSString* s in self)
{
if ([s hasPrefix:pref]) [newArray addObject:s];
}
return newArray;
}
Đó có phải là cách tiếp cận Cocoa thân thiện nhất? Những gì tôi muốn là một cái gì đó càng nhanh càng tốt ...
Câu trả lời hay. Cảm ơn! ;-) –
Cảm ơn, tôi đã sử dụng điều này để so sánh chuỗi ở bất kỳ đâu trong từ: '[NSPredicate predicateWithFormat: @" SELF như [c]% @ ", [NSString stringWithFormat: @" *% @ * ", keyword]]' – atulkhatri