Swift NSPredicate中的一个请求中包含多个案例
我在Swift 3中使用NSPredicate(在Xcode中)。我试图强制te请求一次搜索多个单词。例如:[b,c,t]人们会寻找骨头,圆锥体和音调。我怎样才能做到这一点Swift NSPredicate中的一个请求中包含多个案例,swift,request,nspredicate,Swift,Request,Nspredicate,我在Swift 3中使用NSPredicate(在Xcode中)。我试图强制te请求一次搜索多个单词。例如:[b,c,t]人们会寻找骨头,圆锥体和音调。我怎样才能做到这一点 let conv = "[b,c,t]one" let pred = NSPredicate(format: "name CONTAINS[cd] %@", conv) request.predicate = pred 我试着用[z,ż,ź]im[n,ż]y代替齐姆尼,齐姆尼,齐姆尼,齐姆尼等等。它似乎不起作用。这种查询的
let conv = "[b,c,t]one"
let pred = NSPredicate(format: "name CONTAINS[cd] %@", conv)
request.predicate = pred
我试着用[z,ż,ź]im[n,ż]y代替齐姆尼,齐姆尼,齐姆尼,齐姆尼等等。它似乎不起作用。这种查询的语法是什么?您可以将“MATCHES”操作符与正则表达式模式一起使用。
例如,在
let pattern = "[bct]one"
let pred = NSPredicate(format: "name MATCHES %@", pattern)
“[bct]”是a,与任何字符“b”、“c”匹配,
“t”,以便谓词匹配字符串“bone”、“cone”和“tone”。您可以使用带有正则表达式模式的“matches”操作符。
例如,在
let pattern = "[bct]one"
let pred = NSPredicate(format: "name MATCHES %@", pattern)
“[bct]”是a,与任何字符“b”、“c”匹配,
“t”,以便谓词与字符串“bone”、“cone”和“tone”匹配。是否尝试将
CONTAINS
替换为LIKE
?是的,它也不起作用。这个语法([b,c,t]one)正确吗?包含带“zim”的[cd]可以工作,就像带“zim”的[cd]不能工作一样。两者都有,我不工作。“Zimna woda”是我的字段,我正在过滤。@BartoszWoźniak:[cd]
代表不区分大小写和重音的搜索,所以带有“zimny”的“name CONTAINS[cd]@”应该与“zimny”、“zimny”、“żimny”和“żimny”匹配。好了,现在它工作正常了。[cd]解决了这个问题。但是如果。。。我想查找以4个字母中的一个开头的每个单词。我是否必须创建4个不同的请求并将它们与“或”合并?或者我可以使用像[b,d,p,l]ump这样的东西吗?我试过用像这样的替换CONTAINS
?是的,它也不起作用。这个语法([b,c,t]one)正确吗?包含带“zim”的[cd]可以工作,就像带“zim”的[cd]不能工作一样。两者都有,我不工作。“Zimna woda”是我的字段,我正在过滤。@BartoszWoźniak:[cd]
代表不区分大小写和重音的搜索,所以带有“zimny”的“name CONTAINS[cd]@”应该与“zimny”、“zimny”、“żimny”和“żimny”匹配。好了,现在它工作正常了。[cd]解决了这个问题。但是如果。。。我想查找以4个字母中的一个开头的每个单词。我是否必须创建4个不同的请求并将它们与“或”合并?或者我可以用[b,d,p,l]ump这样的词吗?这正是我想要的答案:d这正是我想要的答案:d