CloudKit NSPredicate不区分大小写

时间:2015-10-13 15:34:04

标签: ios swift nspredicate cloudkit

我有一个云套件查询,它使用下面的NSPredicate来搜索名称以用户输入UITextField的值开头的记录。我想使搜索案例不敏感,所以如果用户搜索“apple”,它将显示“Apple”和“apple”的结果。 我怎样才能做到这一点?我还尝试将查询更改为CONTAINS而不是BEGINSWITH,但应用程序返回没有结果,因为它正在查找数组中的值。是否可以查看字符串是否包含文本字段字符串? 感谢

var p = NSPredicate(format: "name BEGINSWITH %@", titleLabel.text!)

1 个答案:

答案 0 :(得分:0)

根据CKQuery docs

  

对于包含字符串值的字段,您可以匹配开头   字符串的一部分使用BEGINSWITH运算符,如图所示   清单4.您不能使用其他字符串比较运算符,例如   CONTAINS或ENDSWITH。使用此运算符时,该字段必须包含   字符串值,必须以您指定的字符串开头。的匹配   区分大小写。在示例中,谓词匹配记录   其favoriteColors字段包含红色,红色或红色字符串   绿色胶带。