Menu
CoddyTech

Wyszukiwanie wzorców

Część sekcji Podstawy ścieżki GDScript w Coddy. Lekcja 91 z 92.

challenge icon

Wyzwanie

Średni

Napisz funkcję find_occurrences powyżej _ready(). Funkcja:

  1. Przyjmuje dwa ciągi znaków: text i pattern
  2. Liczy, ile razy pattern występuje w text, wliczając nakładające się wystąpienia
  3. Zwraca tablicę z trzema elementami:
    • true, jeśli znaleziono wzorzec, w przeciwnym razie false
    • Liczba wystąpień
    • Tablica z pozycją, od której zaczyna się każde wystąpienie

Na przykład, jeśli text ma wartość "abababab", a pattern ma wartość "aba", funkcja zwraca [true, 3, [0, 2, 4]], ponieważ "aba" zaczyna się na pozycjach 0, 2 i 4.

Jeśli wzorzec nie zostanie znaleziony, zwróć [false, 0, []].

Podana funkcja _ready() odczytuje oba ciągi znaków, wywołuje Twoją funkcję i wyświetla wynik. Zastąp pass treścią funkcji.

Spróbuj swoich sił

extends Node

func find_occurrences(text, pattern):
	# Napisz tutaj swój kod
	pass

func _ready():
	var text := OS.read_string_from_stdin()
	var pattern := OS.read_string_from_stdin()
	# Wywołaj funkcję i wypisz wynik
	var result = find_occurrences(text, pattern)
	print(result)

Wszystkie lekcje w sekcji Podstawy

Poćwicz samodzielnie: Kompilator GDScript online