使用||对于swift中if语句中的多个字符串

时间:2016-03-13 04:41:27

标签: string swift foundation command-line-tool

我正在创建一个命令行Swift应用程序,我有一个用户提示,用户可以回答"是"继续或其他任何事情退出。但我在想如果有人回答" y"或"是"或"是"或者" yEs"。我尝试过使用||但显然那只是为了整理。

这是我的代码:

var askNewFile = getInput()
    if askNewFile == ("yes") {
        //code to start blank editor
    }
    else {
        print("Bye!")
        exit(1)
    }

我会感谢任何帮助,甚至是朝着正确方向努力。

2 个答案:

答案 0 :(得分:2)

把所有的意思都放在"是"进入数组并对用户的输入进行不区分大小写的搜索:

let isYes =  ["y", "yes", "yeah", "yup"].contains {
    askNewFile.compare($0, options: [.CaseInsensitiveSearch]) == .OrderedSame
}
if isYes {
    // User answered yes
}

答案 1 :(得分:0)

或者如果您希望能够将OR条件和“仅字符串”值一起使用,则可以尝试以下公式

let animal = "Fox"
if animal == "Cat" || animal == "Dog" {
print("Animal is a house pet.")
} else {
print("Animal is not a house pet.")
}

您需要记住将原始值和==放在要测试的每个新String值之前,在这种情况下:'animal'