Menu
CoddyTech

图案查找器

本课属于 Coddy Swift 学习旅程的“基础知识”单元。第 85 课,共 86 课。

challenge icon

挑战

简单

读取两行输入:第一行是要搜索的文本,第二行是要查找的模式。

统计模式在文本中出现的次数,包括重叠出现的情况,并输出计数。

要求:

  1. 从输入的第一行读取文本字符串
  2. 从输入的第二行读取模式字符串
  3. 遍历文本,并在每个位置检查是否有匹配的模式
  4. 统计所有出现次数,包括重叠匹配
  5. 将总次数作为一个整数输出

提示:要提取从索引 i 开始且长度特定的子字符串,可以使用索引进行字符串切片。将字符串转换为字符数组,或使用 Swift 的字符串索引操作,检查模式在每个位置是否匹配。

示例:

如果输入是:

ababa
aba

输出应为:

2

模式 "aba" 在索引 0 和索引 2 处出现在 "ababa" 中。

亲手试试

// 读取输入
let text = readLine()!
let pattern = readLine()!

// TODO:在下方编写你的代码
// 统计 pattern 在 text 中出现的次数(包括重叠的情况)


// 输出结果
print(count)

基础知识中的所有课

自己练习: Swift 在线编辑器