我想从核心数据中获取与字符串\\ xxxx \\ yyyy \\ zzzz匹配的名称实体,所以我使用了像NSPredicate *myPredicate = [NSPredicate predicateWithFormat:" name LIKE %@", \\xxxx\\yyyy\\zzzz];
这样的NSPredicate但是有时会返回null。我怀疑反斜杠的问题所以请帮助我任何一个。是否可以从核心数据中获取此实体?
答案 0 :(得分:0)
“LIKE”执行简单的通配符匹配(使用?
和*
)。
因此,反斜杠字符具有特殊含义,必须进行转义
两次(一次用于字符串文字,一次用于“LIKE”操作符):
[NSPredicate predicateWithFormat:"name LIKE %@", @"\\\\xxxx\\\\yyyy\\\\zzzz"]
但是如果你不需要通配符匹配,那么使用“==”(或“BEGINSWITH”,“CONTAINS”)代替:
[NSPredicate predicateWithFormat:"name == %@", @"\\xxxx\\yyyy\\zzzz"]