Resumen - Analizador de archivos Log
Parte de la sección Lógica y flujo de control del Journey de Lua de Coddy. Lección 40 de 54.
Desafío
FácilEscribe una función parseLogEntry que tome logEntry y devuelva la información extraída del registro en una cadena con formato.
Usa string.match() con múltiples capturas para extraer el nivel del registro (entre corchetes), el texto del mensaje y el ID numérico de la entrada del registro. Devuelve estas tres partes de información separadas por comas.
Lógica:
- Usa un patrón con tres capturas: una para el nivel del registro dentro de los corchetes, otra para el texto del mensaje y otra para el ID numérico
- El nivel del registro está compuesto por letras mayúsculas dentro de corchetes
- El mensaje es el texto entre los dos puntos y el ID numérico
- El ID consta de uno o más dígitos al final
- Devuelve los tres valores capturados en el formato:
level,message,id
Parámetros:
logEntry(cadena): Una entrada de registro con el formato[LEVEL]: Message text ID
Devuelve: La información extraída como level,message,id (cadena)
Pruébalo tú mismo
function parseLogEntry(logEntry)
-- Escribe el código aquí
end
Todas las lecciones de Lógica y flujo de control
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 altasPractica por tu cuenta: Compilador de Lua online