在字符串中搜索
本课属于 Coddy Swift 学习旅程的“逻辑与流程”单元。第 3 课,共 56 课。
快速检查子字符串是否包含在另一个字符串中的三种方法:
let email = "alice@coddy.tech"
print(email.contains("@")) // true
print(email.hasPrefix("alice")) // true
print(email.hasSuffix(".tech")) // truecontains 可以查找任意子字符串,而 hasPrefix 和 hasSuffix 只检查开头或结尾。它们都区分大小写,所以如果这点很重要,请先将字符串转换为小写。
将这些与 ! 结合,快速检查是否“缺失”:
if !email.contains("@") {
print("not a valid email")
}挑战
简单读取一行输入。检查以下所有条件,验证它是否为简单电子邮件地址:
- 其中恰好包含一个
@(对字符使用filter和count) - 开头和结尾都不是
@ - 以
.tech、.com或.org结尾(不区分大小写)
如果所有检查都通过,则输出 valid,否则输出 invalid。请与输入转换为小写后的版本进行比较。
对于输入 alice@CODDY.TECH,输出为 valid。
亲手试试
let line = readLine()!
// TODO:验证 '@' 恰好出现一次,且不在首尾,后缀属于 [.tech .com .org]
这节课包含一个小测验。开始学习即可作答,并记录你的进度。
逻辑与流程中的所有课
自己练习: Swift 在线编辑器