Простой способ сделать это - использовать оператор LIKE
.С этим строковым оператором вы можете использовать специальные символы *
и ?
.*
означает «0 или более символов», а ?
означает «ровно один символ».Таким образом, вы можете сделать:
NSPredicate * p = [NSPredicate predicateWithFormat:@"SELF LIKE %@ OR SELF LIKE %@ OR SELF LIKE %@", @"be???", @"be?tt", @"?????g"];
NSLog(@"%d", [p evaluateWithObject:@"beast"]); //logs "1"
(@ benoît хорошо отмечает в своем ответе, что это также может быть достигнуто с помощью регулярного выражения [оператор MATCHES
], которое может сократить длинустрока формата предиката)