Menu
CoddyTech

在字符串中搜索

本课属于 Coddy Swift 学习旅程的“逻辑与流程”单元。第 3 课,共 56 课。

快速检查子字符串是否包含在另一个字符串中的三种方法:

let email = "alice@coddy.tech"
print(email.contains("@"))         // true
print(email.hasPrefix("alice"))    // true
print(email.hasSuffix(".tech"))    // true

contains 可以查找任意子字符串,而 hasPrefix 和 hasSuffix 只检查开头或结尾。它们都区分大小写,所以如果这点很重要,请先将字符串转换为小写。

将这些与 ! 结合,快速检查是否“缺失”:

if !email.contains("@") {
    print("not a valid email")
}
challenge icon

挑战

简单

读取一行输入。检查以下所有条件,验证它是否为简单电子邮件地址:

  • 其中恰好包含一个 @(对字符使用 filter 和 count)
  • 开头和结尾都不是 @
  • 以 .tech、.com 或 .org 结尾(不区分大小写)

如果所有检查都通过,则输出 valid,否则输出 invalid。请与输入转换为小写后的版本进行比较。

对于输入 alice@CODDY.TECH,输出为 valid。

亲手试试

let line = readLine()!

// TODO:验证 '@' 恰好出现一次,且不在首尾,后缀属于 [.tech .com .org]
quiz icon自我测试

这节课包含一个小测验。开始学习即可作答,并记录你的进度。

逻辑与流程中的所有课

自己练习: Swift 在线编辑器