oc的谓词跟正则表达式和sql很像,没有新的语法,可以看做oc单独整了一个类专门封装了正则表达式。 谓词关键字不区分大小写
@interface User : NSObject
@property NSString*name;
@end
@implementation User
@end
int main(int argc, const char * argv[]) {
@autoreleasepool {
User* u=[User new];
u.name=@"abcd";
NSPredicate*p= [NSPredicate predicateWithFormat:@"name contains 'a' "];
BOOL b=[p evaluateWithObject:u];
NSLog(@"%d",b);
p= [NSPredicate predicateWithFormat:@"name like 'a*' "];
b=[p evaluateWithObject:u];
NSLog(@"%d",b);
p= [NSPredicate predicateWithFormat:@"%@ contains 'a' " , @"name"];
b=[p evaluateWithObject:u];
NSLog(@"%d",b);
}
}
打印
2015-10-07 14:30:50.822 testt[1100:33725] 1
2015-10-07 14:30:50.827 testt[1100:33725] 1
2015-10-07 14:30:50.827 testt[1100:33725] 1