Resumen - Analizador de archivos Log
Parte de la sección Logic & Flow del Journey de Lua de Coddy — lección 40 de 54.
Desafío
FácilEscribe una función parseLogEntry que reciba logEntry y devuelva la información de registro extraída en una cadena formateada.
Usa string.match() con múltiples capturas para extraer el nivel de registro (entre corchetes), el texto del mensaje y el ID numérico de la entrada del registro. Devuelve estas tres piezas de información separadas por comas.
Lógica:
- Usa un patrón con tres capturas: una para el nivel de registro dentro de los corchetes, una para el texto del mensaje y otra para el ID numérico
- El nivel de registro son letras mayúsculas dentro de corchetes
- El mensaje es el texto entre los dos puntos y el ID numérico
- El ID es uno o más dígitos al final
- Devuelve los tres valores capturados en el formato:
level,message,id
Parámetros:
logEntry(string): Una entrada de registro en el formato[LEVEL]: Message text ID
Devuelve: La información extraída como level,message,id (string)
Pruébalo tú mismo
function parseLogEntry(logEntry)
-- Escribe el código aquí
end
Todas las lecciones de Logic & Flow
1Iteración avanzada de tablas
Iterar con pairs()Iterar con ipairs()pairs() vs. ipairs()Resumen - Ficha de personaje4Introducción a las Metatablas
¿Qué es una Metatabla?setmetatable y getmetatableEl metamétodo __indexEl metamétodo __newindexEl metamétodo __tostringMetamétodos aritméticos - Parte 1Metamétodos aritméticos - Parte 2Resumen - Tablas de solo lectura7Manipulación avanzada de cadenas
string.gsub() para sustituciónIntroducción a patrones de cadenasstring.find()string.match()Iteración con string.gmatch()Resumen - Analizador de archivos Log2Más funciones de la librería table
table.concat()Construcción de tablas y unpack()table.sort()Ordenamiento personalizado con funcionesRepaso - Tabla de puntuaciones altas