arrays - 检查数组是否包含 Swift 中字符串的一部分?

标签 arrays swift nsarray

我有一个包含多个字符串的数组。我已经使用 contains()(见下文)来检查数组中是否存在某个字符串,但是我想检查数组中是否存在字符串的一部分?

itemsArray = ["Google, Goodbye, Go, Hello"]

searchToSearch = "go"

if contains(itemsArray, stringToSearch) {
    NSLog("Term Exists")
}
else {
    NSLog("Can't find term")
}

上面的代码只是检查一个值是否完整地存在于数组中,但是我想找到 "Google, Google and Go"

最佳答案

这样试试。

let itemsArray = ["Google", "Goodbye", "Go", "Hello"]
let searchToSearch = "go"

let filteredStrings = itemsArray.filter({(item: String) -> Bool in

     var stringMatch = item.lowercaseString.rangeOfString(searchToSearch.lowercaseString)
     return stringMatch != nil ? true : false
})

filteredStrings 将包含具有匹配子字符串的字符串列表。

在 Swift 中,Array struct 提供了 filter 方法,该方法将根据过滤文本条件过滤提供的数组。

关于arrays - 检查数组是否包含 Swift 中字符串的一部分?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30828074/

相关文章:

javascript - 在 Javascript 中合并和排序两个对象数组

javascript - 加载显示在 react 中映射项目的所有按钮上

ios - Alamofire 中的错误处理

swift - NSKeyedArchiver.archiveRootObject 保存失败

ios - 如何排序 NSArray 字母顺序?

php - 将MySQL查询结果存储到二维数组中

java - 有序数组插入

swift - 在 Xcode 中使用委托(delegate)来执行功能

ios - 无法打开文件 “***.app”,因为您没有查看它的权限

objective-c - EXC_BAD_ACCESS 信号