Ein string in C# ist ein Objekt, das unveränderlichen Text als Folge von Unicode-Zeichen (Buchstaben, Ziffern, Satzzeichen usw.) darstellt. Mit doppelten Anführungszeichen definierst du eine string-Instanz:
string fruit = "Apple";
Strings bearbeitest du, indem du die eingebauten Methoden des Strings aufrufst. Um beispielsweise die Leerzeichen aus einem String zu entfernen, kannst du die Trim-Methode so verwenden:
string name = " Jane "
name.Trim()
// => "Jane"
Sobald ein String erstellt wurde, kann sich sein Wert nie mehr ändern. Methoden, die einen String zu verändern scheinen, geben in Wirklichkeit einen neuen String zurück.
Mehrere Strings kannst du miteinander verketten (addieren). Am einfachsten geht das mit dem Operator +.
string name = "Jane";
"Hello " + name + "!";
// => "Hello Jane!"
Für jede String-Formatierung, die komplexer ist als eine einfache Verkettung, ist die String-Interpolation vorzuziehen. Um Interpolation in einem String zu verwenden, stellst du ihm das Dollarzeichen ($) voran. Dann kannst du geschweifte Klammern ({}) verwenden, um auf Variablen innerhalb deines Strings zuzugreifen.
string name = "Jane";
$"Hello {name}!";
// => "Hello Jane!"
In dieser Übung verarbeitest du Logzeilen.
Jede Logzeile ist ein String, der wie folgt formatiert ist: "[<LEVEL>]: <MESSAGE>".
Es gibt drei verschiedene Log-Level:
INFOWARNINGERRORDu hast drei Aufgaben. Bei jeder bekommst du eine Logzeile und sollst etwas damit machen.
Implementiere die (static) Methode LogLine.Message(), um die Nachricht einer Logzeile zurückzugeben:
LogLine.Message("[ERROR]: Invalid operation")
// => "Invalid operation"
Entferne führende oder nachfolgende Leerzeichen:
LogLine.Message("[WARNING]: Disk almost full\r\n")
// => "Disk almost full"
Implementiere die (static) Methode LogLine.LogLevel(), um das Log-Level einer Logzeile zurückzugeben, wobei es in Kleinbuchstaben zurückgegeben werden soll:
LogLine.LogLevel("[ERROR]: Invalid operation")
// => "error"
Implementiere die (static) Methode LogLine.Reformat(), die die Logzeile neu formatiert: zuerst die Nachricht, danach das Log-Level in Klammern:
LogLine.Reformat("[INFO]: Operation completed")
// => "Operation completed (info)"
Melde dich bei Exercism an, um C# mit 62 Konzepte178 Übungen und echtem menschlichen Mentoring zu lernen und zu meistern, alles kostenlos.