Was du dir bei C#-Strings unbedingt merken solltest: Sie sind unveränderliche Objekte, die Text als eine Folge von Unicode-Zeichen darstellen (Buchstaben, Ziffern, Satzzeichen usw.). Um eine string-Instanz zu definieren, verwendest du doppelte Anführungszeichen:
string fruit = "Apple";
Ein String lässt sich bearbeiten, indem du eine seiner Methoden oder Eigenschaften aufrufst. Da sich String-Werte nach ihrer Definition nie mehr ändern können, geben alle Methoden zur String-Bearbeitung einen neuen String zurück.
Ein String wird durch doppelte Anführungszeichen (") begrenzt. Manche Sonderzeichen müssen mit dem Backslash (\) escaped werden. Strings können außerdem mit dem At-Zeichen (@) versehen werden, wodurch sie zu einem Verbatim-String werden, der alle Escaped-Zeichen ignoriert.
string escaped = "c:\\test.txt";
string verbatim = @"c:\test.txt";
escaped == verbatim;
// => true
Wenn du nur einen Teil eines Strings brauchst, kannst du mit der Substring()-Methode genau diesen Teil herausziehen:
string sentence = "Frank chases the bus.";
string name = sentence.Substring(0, 5);
// => "Frank"
Mit der IndexOf()-Methode findest du den Index des ersten Vorkommens eines Strings innerhalb eines Strings. Wird der angegebene Wert nicht gefunden, gibt sie -1 zurück:
"continuous-integration".IndexOf("integration")
// => 11
"continuous-integration".IndexOf("deployment")
// => -1
Und schließlich gibt es viele Möglichkeiten, einen String zu verketten. Am einfachsten geht das mit dem +-Operator.
string name = "Jane";
"Hello " + name + "!";
// => "Hello Jane!"
Für jede String-Formatierung, die über eine einfache Verkettung hinausgeht, ist die String-Interpolation die bessere Wahl. Um die Interpolation in einem String zu aktivieren, stellst du ihm das Dollarzeichen ($) voran.
string name = "Jane";
$"Hello {name}!";
// => "Hello Jane!"