小编Seb*_*ian的帖子

CoreData Predicate 获取包含数组中任何单词的每个句子

在 Swift 4 中,我有一个 CoreData“Sentence”模型,它有一个字符串属性“englishsentence”。我还有一个“单词”数组,并希望获取“englishsentence”属性包含数组中一个或多个单词的所有句子。

var words = ["today", "yesterday", "tomorrow"]
Run Code Online (Sandbox Code Playgroud)

这个数组只是一个例子。它应该在运行时改变并且可以有任何长度。

在 fetch 请求中,我试图做这样的事情:

let fetchRequest =
    NSFetchRequest<NSManagedObject>(entityName: "Sentence")
let predicate = NSPredicate(format: "ANY englishsentence CONTAINS ANY word IN %@", words)
    fetchRequest.predicate = predicate
Run Code Online (Sandbox Code Playgroud)

我能够为包含一个特定单词的所有句子创建一个谓词。但是,我无法让它与单词数组一起工作,除非我遍历单词数组并为每个单词发出新的获取请求。但这似乎非常低效。

predicate core-data nsfetchrequest swift

5
推荐指数
1
解决办法
1916
查看次数

标签 统计

core-data ×1

nsfetchrequest ×1

predicate ×1

swift ×1