NSPredicate
เป็นวิธี NeXTStep ของการสร้างเงื่อนไขในการกรองคอลเลกชัน ( NSArray
, NSSet
, NSDictionary
)
ตัวอย่างเช่นพิจารณาสองอาร์เรย์arr
และfilteredarr
:
NSPredicate *predicate = [NSPredicate predicateWithFormat:@"SELF contains[c] %@",@"c"];
filteredarr = [NSMutableArray arrayWithArray:[arr filteredArrayUsingPredicate:predicate]];
ตัวกรองจะมีรายการที่มีอักขระ c เพียงอย่างเดียว
เพื่อให้ง่ายต่อการจดจำผู้ที่มีพื้นหลัง sql เล็กน้อย
*--select * from tbl where column1 like '%a%'--*
1) เลือก * จาก tbl -> คอลเลกชัน
2) column1 เช่น '% a%' ->NSPredicate *predicate = [NSPredicate predicateWithFormat:@"SELF contains[c] %@",@"c"];
3) เลือก * จาก tbl โดยที่ column1 เช่น '% a%' ->
[NSMutableArray arrayWithArray:[arr filteredArrayUsingPredicate:predicate]];
ฉันหวังว่านี่จะช่วยได้