Recapitulação - Analisador de Arquivos de Log
Parte da seção Lógica e Fluxo do Journey de Lua da Coddy. Lição 40 de 54.
Desafio
FácilEscreva uma função parseLogEntry que receba logEntry e retorne as informações extraídas do log em uma string formatada.
Use string.match() com múltiplas capturas para extrair o nível do log (entre colchetes), o texto da mensagem e o ID numérico da entrada de log. Retorne essas três informações separadas por vírgulas.
Lógica:
- Use um padrão com três capturas: uma para o nível do log dentro dos colchetes, uma para o texto da mensagem e uma para o ID numérico
- O nível do log consiste em letras maiúsculas dentro de colchetes
- A mensagem é o texto entre os dois-pontos e o ID numérico
- O ID consiste em um ou mais dígitos no final
- Retorne os três valores capturados no formato:
level,message,id
Parâmetros:
logEntry(string): Uma entrada de log no formato[LEVEL]: Message text ID
Retorna: As informações extraídas como level,message,id (string)
Experimente você mesmo
function parseLogEntry(logEntry)
-- Escreva o código aqui
end
Todas as lições de Lógica e Fluxo
1Iteração avançada de tabelas
Iterando com pairs()Iterando com ipairs()pairs() vs. ipairs()Revisão - Ficha de personagem4Introdução às Metatabelas
O que é uma Metatabela?setmetatable e getmetatableO Metamétodo __indexO Metamétodo __newindexO Metamétodo __tostringMetamétodos Aritméticos — Parte 1Metamétodos Aritméticos — Parte 2Recapitulação — Tabela Somente para Leitura7Manipulação Avançada de Strings
string.gsub() para SubstituiçãoIntrodução aos Padrões de Stringsstring.find()string.match()Iterando com string.gmatch()Recapitulação - Analisador de Arquivos de Log2Mais funções da biblioteca table
table.concat()Construção de tabelas e unpack()table.sort()Ordenação personalizada com funçõesRevisão - Placar de pontuações máximasPratique por conta própria: Compilador de Lua online