图案查找器
本课属于 Coddy GDScript 学习旅程的“基础知识”单元。第 91 课,共 92 课。
挑战
中等在 _ready() 上方编写函数 find_occurrences。它会:
- 接收两个字符串:
text和pattern - 统计
pattern在text中出现的次数,包括重叠的情况 - 返回一个包含三个元素的数组:
- 如果找到该模式,则返回
true,否则返回false - 出现次数
- 一个数组,其中包含每次出现的起始位置
- 如果找到该模式,则返回
例如,如果 text 是 "abababab",且 pattern 是 "aba",函数会返回 [true, 3, [0, 2, 4]],因为 "aba" 从位置 0、2 和 4 开始。
如果没有找到该模式,则返回 [false, 0, []]。
给定的 _ready() 会读取这两个字符串,调用你的函数并输出结果。将 pass 替换为函数体。
亲手试试
extends Node
func find_occurrences(text, pattern):
# 在这里编写代码
pass
func _ready():
var text := OS.read_string_from_stdin()
var pattern := OS.read_string_from_stdin()
# 调用函数并打印结果
var result = find_occurrences(text, pattern)
print(result)
基础知识中的所有课
自己练习: GDScript 在线编译器