斯威夫特:检查字符串,如果它有一个数组中的元素 [英] Swift: Check String if it has an element in an Array

查看:77
本文介绍了斯威夫特:检查字符串,如果它有一个数组中的元素的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我要检查,如果一个字符串包含在一个数组中的至少一个元素。

我试过,但我认为这是太长了。试想一下,如果我想在if语句的所有字母。我希望有这样做一个适当的方式。

 无功海峡=你好,游乐场。让typeString =的NSString(字符串:STR)如果typeString.containsString(一)|| typeString.containsString(E)|| typeString.containsString(I)|| typeString.containsString(O)|| typeString.containsString(U){
打印(是)
}其他{
打印(否)
}
//没错

我试图用一个数组,但它不工作。它需要在所有的数组元素有结果是。

 让元音=A,E,I,O,U]
如果typeString.containsString(\\(元音)){
打印(是)
}其他{
打印(否)
}
//没有

顺便说一句,我还是个新手,还在学习。希望有人能提供帮助。谢谢


解决方案

 让海峡=你好,游乐场。
让vogalsSet = NSCharacterSet(charactersInString:AEIOU)
如果str.componentsSeparatedByCharactersInSet(vogalsSet)。首先!= {STR
    打印(至少一个字符被发现)
}其他{
    打印(找不到)
}

或者你也可以检查是否rangeOfCharacterFromSet()!=零

 如果str.rangeOfCharacterFromSet(vogalsSet)!= {为零
    打印(至少一个字符被发现)
 }其他{
    打印(找不到)
}

I want to check if a string contains at least one element in an array.

I tried this but I think it's too long. Imagine if I want all the alphabet in the if statement. I hope there is a proper way to do this.

var str = "Hello, playground."

let typeString = NSString(string: str)

if typeString.containsString("a") || typeString.containsString("e") || typeString.containsString("i") || typeString.containsString("o") || typeString.containsString("u") {
print("yes")
} else { 
print("no")
}
// yes

I tried using an array but it doesn't work. It needs all of the elements in an array to have a result of "yes".

let vowels = ["a", "e", "i", "o", "u"]
if typeString.containsString("\(vowels)") {
print("yes")
} else {
print("no")
}
// no

Btw, I'm still a newbie and still learning. Hope someone can help. Thanks

解决方案

let str = "Hello, playground."
let vogalsSet = NSCharacterSet(charactersInString: "aeiou")
if str.componentsSeparatedByCharactersInSet(vogalsSet).first != str {
    print("at least one character was found")
} else {
    print("not found")
}

or you can also check if if rangeOfCharacterFromSet() != nil

 if str.rangeOfCharacterFromSet(vogalsSet) != nil {
    print("at least one character was found")
 } else {
    print("not found")
}

这篇关于斯威夫特:检查字符串,如果它有一个数组中的元素的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
相关文章
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆