Un string en Clojure es un string de Java, es decir, una cadena: un objeto que representa texto inmutable como una secuencia de caracteres Unicode (letras, dígitos, signos de puntuación, etc.) y se define así:
(def fruit "Apple")
La biblioteca clojure.string proporciona muchas funciones estándar de manipulación y procesamiento de strings. Además, todos los métodos habituales de Java para operar con strings están disponibles a través de la interoperabilidad.
En este ejercicio vas a procesar líneas de registro.
Cada línea de registro es un string con el siguiente formato: "[<LEVEL>]: <MESSAGE>".
Existen tres niveles de registro diferentes:
INFOWARNINGERRORTienes tres tareas, y cada una recibe una línea de registro y te pide hacer algo con ella.
Implementa la función message para que devuelva el mensaje de una línea de registro:
(message "[ERROR]: Invalid operation")
;;=> "Invalid operation"
Cualquier espacio en blanco al inicio o al final debe eliminarse:
(message "[WARNING]: Disk almost full\r\n")
;;=> "Disk almost full"
Implementa la función log-level para que devuelva el nivel de registro de una línea de registro, en minúsculas:
(log-level "[ERROR]: Invalid operation")
;;=> "error"
Implementa la función reformat que reformatea la línea de registro, colocando el mensaje primero y el nivel de registro después, entre paréntesis:
(reformat "[INFO]: Operation completed")
;;=> "Operation completed (info)"
Regístrate en Exercism para aprender y dominar Clojure con 12 conceptos105 ejercicios y mentoría humana real, todo gratis.