Écrire une fonction qui supprime les commentaires d’un texte.
La fonction reçoit :
- une chaîne de caractères contenant plusieurs lignes
- un ensemble de marqueurs de commentaires
Tout le texte situé après un marqueur de commentaire sur une ligne doit être supprimé.
De plus, les espaces en fin de ligne doivent également être supprimés.
🔗 Kata Codewars - Strip Comments
• • •
La fonction doit respecter les règles suivantes :
- Recevoir :
text→ une chaîne contenant plusieurs lignescommentMarkers→ une liste de marqueurs de commentaires
- Pour chaque ligne :
- supprimer tout le texte situé après un marqueur
- supprimer les espaces à la fin de la ligne
- Conserver le reste du texte intact
- Retourner la nouvelle chaîne nettoyée
• • •
Le traitement consiste à :
- Découper le texte ligne par ligne
- Rechercher la présence d’un marqueur de commentaire
- Conserver uniquement la partie avant le marqueur
- Supprimer les espaces en fin de ligne
Conceptuellement :
pour chaque ligne
trouver le premier marqueur de commentaire
supprimer le texte après ce marqueur
supprimer les espaces en fin de ligne
• • •
Entrée :
apples, pears # and bananas
grapes
bananas !apples
Avec les marqueurs :
["#", "!"]
Résultat attendu :
apples, pears
grapes
bananas
Explication :
#supprime le texte après "apples, pears"!supprime le texte après "bananas"- les espaces en fin de ligne sont supprimés
• • •
Les tests unitaires associés sont disponibles dans le projet :
Les tests couvrent notamment :
- la suppression correcte des commentaires
- la gestion de plusieurs marqueurs
- la suppression des espaces en fin de ligne
- des textes contenant plusieurs lignes
- plusieurs tests automatiques
• • •
La fonction doit :
- recevoir un texte multi-ligne
- recevoir une liste de marqueurs de commentaires
- supprimer tout le texte situé après un marqueur
- supprimer les espaces en fin de ligne
- retourner le texte nettoyé
Exemple :
apples, pears # and bananas
grapes
bananas !apples
Résultat :
apples, pears
grapes
bananas