Un string en C# es un objeto que representa texto inmutable como una secuencia de caracteres Unicode (letras, dígitos, signos de puntuación, etc.). Las comillas dobles se usan para definir una instancia de string:
string fruit = "Apple";
Los strings se manipulan llamando a los métodos integrados del string. Por ejemplo, para eliminar los espacios en blanco de un string, puedes usar el método Trim así:
string name = " Jane "
name.Trim()
// => "Jane"
Una vez que se ha construido un string, su valor nunca puede cambiar. Cualquier método que parezca modificar un string en realidad devolverá un string nuevo.
Se pueden concatenar (sumar) varios strings. La forma más sencilla de lograrlo es usando el operador +.
string name = "Jane";
"Hello " + name + "!";
// => "Hello Jane!"
Para cualquier formato de string más complejo que una simple concatenación, se prefiere la interpolación de strings. Para usar la interpolación en un string, anteponle el símbolo de dólar ($). Luego puedes usar llaves ({}) para acceder a cualquier variable dentro de tu string.
string name = "Jane";
$"Hello {name}!";
// => "Hello Jane!"
En este ejercicio vas a procesar líneas de log.
Cada línea de log es una cadena con el siguiente formato: "[<LEVEL>]: <MESSAGE>".
Hay tres niveles de log diferentes:
INFOWARNINGERRORTienes tres tareas, y cada una recibe una línea de log y te pide hacer algo con ella.
Implementa el método (static) LogLine.Message() para devolver el mensaje de una línea de log:
LogLine.Message("[ERROR]: Invalid operation")
// => "Invalid operation"
Se deben eliminar los espacios en blanco al principio y al final:
LogLine.Message("[WARNING]: Disk almost full\r\n")
// => "Disk almost full"
Implementa el método (static) LogLine.LogLevel() para devolver el nivel de log de una línea de log, que debe devolverse en minúsculas:
LogLine.LogLevel("[ERROR]: Invalid operation")
// => "error"
Implementa el método (static) LogLine.Reformat() que le da un nuevo formato a la línea de log, colocando primero el mensaje y después el nivel de log entre paréntesis:
LogLine.Reformat("[INFO]: Operation completed")
// => "Operation completed (info)"
Regístrate en Exercism para aprender y dominar C# con 62 conceptos178 ejercicios y mentoría humana real, todo gratis.