Menu
CoddyTech

Musterfinder

Teil des Abschnitts Grundlagen der GDScript-Journey von Coddy. Lektion 91 von 92.

challenge icon

Aufgabe

Mittel

Schreibe die Funktion find_occurrences oberhalb von _ready(). Sie:

  1. Nimmt zwei Zeichenketten entgegen: text und pattern
  2. Zählt, wie oft pattern in text vorkommt, einschließlich überlappender Vorkommen
  3. Gibt ein Array mit drei Elementen zurück:
    • true, wenn das Muster gefunden wurde, andernfalls false
    • Die Anzahl der Vorkommen
    • Ein Array mit der Position, an der jedes Vorkommen beginnt

Wenn zum Beispiel text den Wert "abababab" und pattern den Wert "aba" hat, gibt die Funktion [true, 3, [0, 2, 4]] zurück, weil "aba" an den Positionen 0, 2 und 4 beginnt.

Wenn das Muster nicht gefunden wird, gib [false, 0, []] zurück.

Die vorgegebene Funktion _ready() liest die beiden Zeichenketten ein, ruft deine Funktion auf und gibt das Ergebnis aus. Ersetze pass durch den Funktionskörper.

Probier es selbst

extends Node

func find_occurrences(text, pattern):
	# Schreibe hier deinen Code
	pass

func _ready():
	var text := OS.read_string_from_stdin()
	var pattern := OS.read_string_from_stdin()
	# Rufe die Funktion auf und gib das Ergebnis aus
	var result = find_occurrences(text, pattern)
	print(result)

Alle Lektionen in Grundlagen

Übe selbstständig: Online-GDScript-Compiler