Récapitulatif - Analyseur de fichiers journaux
Fait partie de la section Logique et flux du Journey Lua de Coddy. Leçon 40 sur 54.
Défi
FacileÉcrivez une fonction parseLogEntry qui prend logEntry et renvoie les informations du journal extraites dans une chaîne formatée.
Utilisez string.match() avec plusieurs captures pour extraire le niveau du journal (entre crochets), le texte du message et l’ID numérique de l’entrée de journal. Renvoyez ces trois éléments d’information séparés par des virgules.
Logique :
- Utilisez un motif avec trois captures : une pour le niveau du journal entre crochets, une pour le texte du message et une pour l’ID numérique
- Le niveau du journal est composé de lettres majuscules entre crochets
- Le message est le texte situé entre les deux-points et l’ID numérique
- L’ID est composé d’un ou de plusieurs chiffres à la fin
- Renvoyez les trois valeurs capturées au format suivant :
level,message,id
Paramètres :
logEntry(string) : une entrée de journal au format[LEVEL]: Message text ID
Renvoie : les informations extraites sous la forme level,message,id (string)
Essayez vous-même
function parseLogEntry(logEntry)
-- Écrire le code ici
end
Toutes les leçons de Logique et flux
1Itération avancée des tables
Itérer avec pairs()Itérer avec ipairs()pairs() contre ipairs()Récapitulatif - Fiche de personnage4Introduction aux métatables
Qu’est-ce qu’une métatable ?setmetatable et getmetatableLa metaméthode __indexLa metaméthode __newindexLa metaméthode __tostringMétaméthodes arithmétiques - Partie 1Métaméthodes arithmétiques - Partie 2Récapitulatif - Table en lecture seule7Manipulation avancée des chaînes
string.gsub() pour la substitutionIntroduction aux motifs de chaînesstring.find()string.match()Itérer avec string.gmatch()Récapitulatif - Analyseur de fichiers journaux2Fonctions supplémentaires de la bibliothèque table
table.concat()construction de tables et unpack()table.sort()Tri personnalisé avec des fonctionsRécapitulatif - Tableau des meilleurs scores3Concepts avancés des fonctions
Retourner plusieurs valeursFonctions variadiques (...)Les fonctions comme valeurs de première classeFonctions anonymesQu’est-ce qu’une fermeture ?Récapitulatif - Gestionnaire d’événements simpleEntraînez-vous par vous-même : Compilateur Lua en ligne