我已在StackOverflow中签入,未找到我的查询的任何有效解决方案。
struct MyModel{
let title: String
let subTitle: String
let image: UIImage
}
现在,我想搜索标题并将其输出,返回mymodel过滤器数组。假设这是我的标题数组。
[
"Swift CollectionView Xcode 11",
"Swift UITableView Xcode 11",
"Swift UICollectionView Xcode 11",
"Objective C UITableView Xcode 11",
"Objective C CollectionView Xcode 11",
"Objective C UICollectionView Xcode 11",
]
如果我搜索"collectionView"
,则>>
“” Swift UICollectionView Xcode 11“,” Swift CollectionView Xcode 11“-右
如果我搜索"collectionview Objective C"
,那么我想要这个搜索结果,它给了我整个带有过滤器的数组
“ Objective C CollectionView Xcode 11”,“ Objective C UICollectionView Xcode 11”,“ Swift CollectionView Xcode 11”,“ Swift CollectionView Xcode 11”,
因为在搜索中它也包含collectionview和target c。首先,如果包含整个字符串,则结果必须先显示我,然后再显示其他。
我尝试这种方式但不起作用
let stringComponent = searchText.components(separatedBy: " ") _ = searchText.components(separatedBy: " ").map{ (str) in arrTemp += arrVideo.filter { (data) -> Bool in if data.title.lowercased().contains(str.lowercased()) && !arrTemp.contains(data){ return true } return false }
也选中了
NSPredicate, Sort and filter
,但对我不起作用。
请帮助我!谢谢。
我已在StackOverflow中签入找不到我的查询的任何有效解决方案。 struct MyModel {let title:String let subTitle:String let image:UIImage}现在,我想搜索标题并输出...
从我所看到的问题是,当您将字符串与空字符串“”分开时,会形成关键字的情况发生]]
- collectionview
- Objective
- C
检查下面的代码,它将根据最佳搜索结果对数组进行排序。