首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >快速搜索一个字符串中的多个单词

快速搜索一个字符串中的多个单词
EN

Stack Overflow用户
提问于 2017-01-27 20:35:06
回答 3查看 6.2K关注 0票数 9

swift3中有一个长字符串,希望检查它是否包含word1、 word2。它也可能是两个以上的搜索词。我发现了以下解决方案:

代码语言:javascript
复制
var Text = "Hello Swift-world"
var TextArray = ["Hello", "world"]
var count = 0

for n in 0..<TextArray.count {
    if (Text.contains(TextArray[n])) {
        count += 1
    }
}

if (count == TextArray.count) {
    print ("success")
}

但这似乎很复杂,难道没有更容易的办法来解决这个问题吗?(Xcode8和swift3)

EN

Stack Overflow用户

发布于 2017-01-27 20:45:01

一个更快速的解决方案将停止搜索它发现了一个不存在的词:

代码语言:javascript
复制
var text = "Hello Swift-world"
var textArray = ["Hello", "world"]

let match = textArray.reduce(true) { !$0 ? false : (text.range(of: $1) != nil ) }

另一种在发现不匹配后停止的方法:

代码语言:javascript
复制
let match = textArray.first(where: { !text.contains($0) }) == nil
票数 3
EN
查看全部 3 条回答
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/41902580

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档