Dopasowanie z symbolami wieloznacznymi
Lekcja 15 z 15 w kursie Wyzwania z rekurencji — opanuj myślenie rekurencyjne w Coddy.
Wyzwanie
TrudnyNapisz funkcję o nazwie test, która przyjmuje ciąg znaków s i wzorzec p, a następnie zwraca true, jeśli wzorzec pasuje do ciągu znaków, w przeciwnym razie false.
Wzorzec może zawierać litery, cyfry, białe znaki oraz następujące symbole wieloznaczne:
*- pasuje do dowolnej sekwencji liter, cyfr i białych znaków..- pasuje do dokładnie jednej litery, cyfry lub białego znaku.?- opcjonalnie pasuje do dowolnej sekwencji liter, cyfr i białych znaków.
Przykłady:
test("My name is Jake", "My name is *")->truetest("My name is Jake", "Your name is *")->falsetest("Maximum", "M..imum")->truetest("Mimum", "M?imum")->truetest("Minimum", "K?imum")->false
Wzorzec musi pasować do całego ciągu znaków, a nie tylko do jego fragmentu!
Spróbuj swoich sił
int test(char* s, char* p) {
// Wpisz kod tutaj
}Wszystkie lekcje w sekcji Wyzwania z rekurencji — opanuj myślenie rekurencyjne
2Średnio zaawansowane wyzwania
Problem plecakowyLiczba kwadratówPrzeplatanie wynikówKombinacje sumZnajdź trójkęPodziel tablicęPoćwicz samodzielnie: Kompilator C online