我有一个coreData fetchRequest,它根据用户输入的searchString过滤结果。
我希望结果以与searchString相同的前缀开头,而不是以字母顺序或任何其他顺序开头。
例如,如果我的数组是:
["apple", "banana", "cherry", "durian", "raspberry"]
并且我在搜索栏中输入的searchString是“ r”,我希望“ raspberry”成为第一个返回的结果,然后是“ cherry”和“ durian”
对于上述情况,我的谓词是:
request.predicate = NSPredicate(format: "item.itemName CONTAINS[cd] %@", self.searchString)
目前我的sortDescriptor是:
let prefixSort = ???
let nameSort = NSSortDescriptor(key: "item.itemName", ascending: true, selector: #selector(NSString.localizedCaseInsensitiveCompare(_:)))
request.sortDescriptors = [prefixSort, nameSort]
不确定如何输入prefixSort,以便对结果进行排序,以将搜索字符串作为优先级的前缀