-predicateWithFormat:
検索条件を作ります
+(NSPredicate *)predicateWithFormat:(NSString *)format, ...:
解説
検索条件を作ります。
【format, ...】
Predicates Programming Guide
http://developer.apple.com/documentation/Cocoa/Conceptual/Predicates/Predicates.pdf
を参照
● @"newAttribute = '1'"
● @"newAttribute > 1"
BEGINSWITH 指定の文字列から始まる
CONTAINS 指定の文字列を含む
● @"name contains[cd] 'citroen'"
● @"name contains[c] 'citroen' && newAttribute >= 10.0"
ENDWITH 指定の文字列で終わる
LIKE
MATCHES
複数の条件を結合する場合
&&
||
10.5以降betweenが使える。
date between {$YESTERDAY, $TOMORROW}.
http://developer.apple.com/documentation/Cocoa/Conceptual/Predicates/Articles/pUsing.html
NSMetaDataQuery
返り値
( NSPredicate * )
なし
引数
( NSString * )format, ...
フレームワーク
Foundation
クラス
NSPredicate
Class Methods
使用可能
10.4
参照
例文
//1 NSPredicate *predicate = [NSPredicate predicateWithFormat:@"newAttribute = '1'"]; //2 NSPredicate *predicate = [NSPredicate predicateWithFormat:@"SELF IN %@", [NSArray arrayWithObjects:@"aaa", @"bbb", @"ccc", nil]]; //3 NSMutableArray *array = [NSMutableArray arrayWithObjects:@"aaa", @"bbb", @"ccc", @"ddd", nil]; NSPredicate *bPredicate = [NSPredicate predicateWithFormat:@"SELF beginswith[c] 'b'"]; NSArray *beginWithB = [array filteredArrayUsingPredicate:bPredicate]; NSPredicate *sPredicate = [NSPredicate predicateWithFormat:@"SELF contains[c] 's'"]; [array filterArrayUsingPredicate:sPredicate];