我正在创建一个命令行Swift应用程序,我有一个用户提示,用户可以回答"是"继续或其他任何事情退出。但我在想如果有人回答" y"或"是"或"是"或者" yEs"。我尝试过使用||但显然那只是为了整理。
这是我的代码:
var askNewFile = getInput()
if askNewFile == ("yes") {
//code to start blank editor
}
else {
print("Bye!")
exit(1)
}
我会感谢任何帮助,甚至是朝着正确方向努力。
答案 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'