Menu
Coddy logo textTech

Wildcard Matching

Leçon 15 sur 15 du cours Défis de récursivité - Maîtrisez la pensée récursive de Coddy.

challenge icon

Défi

Difficile

Écrivez une fonction nommée test qui reçoit une chaîne s et un motif p et renvoie true si le motif correspond à la chaîne, sinon false.

Le motif peut contenir des lettres, des chiffres, des espaces blancs et les caractères génériques suivants,

  • * - correspond à n'importe quelle séquence de lettres, de chiffres et d'espaces blancs.
  • . - correspond à exactement un caractère (lettre, chiffre ou espace blanc).
  • ? - correspond facultativement à n'importe quelle séquence de lettres, de chiffres et d'espaces blancs.

Exemples,

  • test("My name is Jake", "My name is *")  ->  true
  • test("My name is Jake", "Your name is *")  ->  false
  • test("Maximum", "M..imum")  ->  true 
  • test("Mimum", "M?imum")  ->  true 
  • test("Minimum", "K?imum")  ->  false 

Le motif doit correspondre à l'intégralité de la chaîne, et non à une sous-chaîne partielle !

Essayez vous-même

int test(char* s, char* p) {
    // Écrivez le code ici
}

Toutes les leçons de Défis de récursivité - Maîtrisez la pensée récursive