Arrays 搜索整个数组
如何实现对所有三个参数的搜索?在搜索OrganizationName时,一切都像do all一样工作?多谢各位Arrays 搜索整个数组,arrays,swift,search,filter,Arrays,Swift,Search,Filter,如何实现对所有三个参数的搜索?在搜索OrganizationName时,一切都像do all一样工作?多谢各位 func filterTableView(text:String) { dataArray = initialDataAry.filter({ (mod) -> Bool in return mod.organisationName .lowercased().contains(text.lowercased(
func filterTableView(text:String) {
dataArray = initialDataAry.filter({ (mod) -> Bool in
return mod.organisationName
.lowercased().contains(text.lowercased())
})
self.tableView.reloadData()
if dataArray.count != 0 {
dataArray = initialDataAry.filter({ (mod) -> Bool in
return mod.tel1Org
.lowercased().contains(text.lowercased())
})
self.tableView.reloadData()
}
if dataArray.count != 0 {
dataArray = initialDataAry.filter({ (mod) -> Bool in
return mod.tel2Org
.lowercased().contains(text.lowercased())
})
self.tableView.reloadData()
}
}
检查一个过滤器内的所有三个字段:
func filterTableView(text:String) {
let search = text.lowercased()
dataArray = initialDataAry.filter({ (mod) -> Bool in
return mod.organisationName.lowercased().contains(search) ||
mod.tel1Org.lowercased().contains(search) ||
mod.tel2Org.lowercased().contains(search)
})
self.tableView.reloadData()
}
检查一个过滤器内的所有三个字段:
func filterTableView(text:String) {
let search = text.lowercased()
dataArray = initialDataAry.filter({ (mod) -> Bool in
return mod.organisationName.lowercased().contains(search) ||
mod.tel1Org.lowercased().contains(search) ||
mod.tel2Org.lowercased().contains(search)
})
self.tableView.reloadData()
}
您可以一次对所有字符串使用或比较。这与添加所有字符串并比较结果字符串相同
dataArray = initialDataAry.filter({ (mod) -> Bool in
let searchString = mod.organisationName + mod.tel1Org + mod.tel2Org
return searchString
.lowercased().contains(text.lowercased())
})
self.tableView.reloadData()
您可以一次对所有字符串使用或比较。这与添加所有字符串并比较结果字符串相同
dataArray = initialDataAry.filter({ (mod) -> Bool in
let searchString = mod.organisationName + mod.tel1Org + mod.tel2Org
return searchString
.lowercased().contains(text.lowercased())
})
self.tableView.reloadData()