Mustergenerator
Teil des Abschnitts Grundlagen der Kotlin-Journey von Coddy. Lektion 92 von 93.
Aufgabe
MittelSchreibe eine Funktion findPattern, die text und pattern entgegennimmt und den Startindex des ersten Auftretens des Musters innerhalb des Textes zurückgibt.
Durchsuche den Text, um herauszufinden, wo das Muster zum ersten Mal erscheint. Wenn es gefunden wird, gib seinen 0-basierten Startindex zurück. Wenn das Muster im Text nicht vorkommt, gib -1 zurück.
Logik:
- Durchlaufe die möglichen Startpositionen im Text
- Prüfe an jeder Position, ob die Teilzeichenkette mit dem Muster übereinstimmt
- Gib den Index zurück, sobald eine Übereinstimmung gefunden wird
- Wenn nach der Prüfung aller Positionen keine Übereinstimmung gefunden wird, gib
-1zurück
Parameter:
text(String): Der Text, in dem gesucht werden sollpattern(String): Das zu findende Muster
Rückgabe: Der 0-basierte Index, an dem das Muster zum ersten Mal erscheint, oder -1, wenn es nicht gefunden wurde (Int)
Eingabebedingungen: Ein leeres Muster stimmt am Index 0 überein. Ein Muster, das länger als der Text ist, hat keine Übereinstimmung.
Probier es selbst
fun findPattern(text: String, pattern: String): Int {
// Schreibe den Code hier
}
Alle Lektionen in Grundlagen
4Operatoren Teil 1
Arithmetische OperatorenModulo-OperatorErweiterte ZuweisungVergleichsoperatorenRückblick – Einfache Mathematik7Grundlegende Ein-/Ausgabe
println-FunktionString-VorlagenReadLine-EingabeTypkonvertierungWiederholung – Jahre bis zur RenteWiederholung – Wahr oder falsch10Funktionen
Eine Funktion deklarierenParameter und ArgumenteRückgabewerteBenannte ArgumenteStandardwerteFunktionen mit einem AusdruckRückblick – Sigma-FunktionRückblick – Validierungsfunktion2Variablen
Val vs VarTypinferenzZahlenStringBooleanNamenskonventionenRückblick – Variablen initialisieren5Operatoren Teil 2
Logische Operatoren Teil 1Logische Operatoren Teil 2Logische Operatoren Teil 3Ternär mit If-AusdruckWiederholung – Einfache Logik8Rechner zum Aufteilen der Rechnung
WillkommensnachrichtEingaben erfassen11FizzBuzz mit einer Wendung
SpielübersichtDie FizzBuzz-Funktion3Nullbarkeit
Was ist Null-Sicherheit?Nullable-TypenOperator für sicheren AufrufElvis-OperatorGrundlagen der FunktionsaufgabeAssertion auf Nicht-NullRückblick – Sicherer Zugriff6Entscheidungen treffen
If-AnweisungIf - ElseIf als AusdruckWhen-AusdruckWhen mit BereichenRückblick - Einfacher Taschenrechner9Schleifen
For-SchleifeWhile-SchleifeDo-While-SchleifeBreakContinueBereiche in SchleifenVerschachtelte SchleifeRückblick – FakultätRückblick – Dynamische EingabeÜbe selbstständig: Kotlin-Playground