谁能解释一下这个 NSPredicate 语法
Posted
技术标签:
【中文标题】谁能解释一下这个 NSPredicate 语法【英文标题】:Who can explain this NSPredicate syntax 【发布时间】:2017-01-17 16:08:57 【问题描述】:我有这个谓词:
let searchPredicate = NSPredicate(format: "SELF LIKE[cd] %@", searchString)
我用于过滤数组并找到所需的字符串。
你能解释一下这个论点“SELF LIKE[cd] %@”是什么意思吗?
【问题讨论】:
见this answer。[cd]
不区分大小写和变音符号,其他一切都在Predicate Programming Guide 中描述
【参考方案1】:
首先,NSPredicate(format:)
类似于String(format:)
,因此%@
被替换为searchString
的内容。
[cd]
表示 case 和 diacritic 不敏感 - 所以 john Jonés
将匹配 John Jones
LIKE
用于匹配通配符(* = 0 个或更多字符,? = 1 个字符)。所以LIKE Joh*
将匹配John Jones
【讨论】:
尊重您的全面回答,Ashley! :-)以上是关于谁能解释一下这个 NSPredicate 语法的主要内容,如果未能解决你的问题,请参考以下文章
NSPredicate 表达式中 SUBQUERY 的快速解释