Kurse:Datentypen-C-Sharp String-Operationen und wichtige Methoden

Aus ahrensburg.city
Zur Navigation springen Zur Suche springen

Hier ist die Übersicht, sortiert von Anfänger bis Profi, jeweils mit Beispielcode und Merkzettel:

Anfänger

Deklaration & Verkettung
string name = "Alice";
string full = vorname + " " + nachname;
  • Merkzettel: Strings sind Zeichenketten. Verkettung mit +.
Eigenschaften & Vergleich
int len = str.Length;
bool gleich = str == "abc";
  • Merkzettel: .Length gibt die Länge. == vergleicht Werte.
Suchen & Extrahieren
bool hat = str.Contains("abc");
char c = str[0];
string teil = str.Substring(2, 3);
  • Merkzettel: .Contains prüft auf Teilstring, [i] für Zeichen, Substring für Ausschnitt.
Aufteilen & Zusammenfügen
var parts = str.Split(',');
string joined = string.Join(";", parts);
  • Merkzettel: Split teilt, Join verbindet.
Trimmen & Ersetzen
str.Trim();
str.Replace("alt", "neu");
  • Merkzettel: Trim entfernt Leerzeichen, Replace ersetzt Text.

Fortgeschritten

Formatierung & Groß/Kleinschreibung
string s = $"Wert: {value:N2}";
str.ToUpperInvariant();
  • Merkzettel: $"" für Interpolation, ToUpper/ToLower für Umwandlung.
Einfügen & Entfernen & Pad
str.Insert(2, "X");
str.Remove(1, 2);
"42".PadLeft(5, '0');
  • Merkzettel: Insert/Remove ändern Text, PadLeft/Right füllt auf.
Zeichenprüfung
char.IsLetterOrDigit(ch);
  • Merkzettel: Prüft Zeichen auf Buchstabe/Ziffer.
Null/Empty/WhiteSpace
string.IsNullOrEmpty(str);
string.IsNullOrWhiteSpace(str);
  • Merkzettel: Prüft auf leere oder nur Leerzeichen.

Profi

StringBuilder (für viele Änderungen)
var sb = new StringBuilder().Append("A").Append("B");
string result = sb.ToString();
  • Merkzettel: StringBuilder für viele Verkettungen.
Span-Slicing & Split (Performance)
var teil = str.AsSpan().Slice(2, 3);
  • Merkzettel: AsSpan/Slice für schnelle Teilstrings.
Sicherheitsrelevanter Vergleich
CryptographicOperations.FixedTimeEquals(
    MemoryMarshal.AsBytes("secret"u8),
    MemoryMarshal.AsBytes(eingabe.AsSpan()));
  • Merkzettel: FixedTimeEquals für sichere Vergleiche.
Interpolated String Handler
[InterpolatedStringHandler]
public ref struct LogHandler { }
  • Merkzettel: Eigene Handler für Logging/Performance.
Raw String Literals (C# 11)
string json = """
{
  "id": 1,
  "name": "Alice"
}
""";
  • Merkzettel: Mehrzeilige Strings mit """.
Escapes & Normalisierung
string pfad = @"C:\Temp\log.txt";
string norm = str.Normalize(NormalizationForm.FormC);
  • Merkzettel: @ für Pfade, Normalize für Unicode.

Zusammenfassung

Kurzliste Anfänger: Deklaration, Verkettung, Eigenschaften, Vergleich, Suchen, Extrahieren, Split, Join, Trim, Replace Kurzliste Fortgeschritten: Formatierung, Groß/Klein, Insert, Remove, Pad, Zeichenprüfung, Null/Empty Kurzliste Profi: StringBuilder, Span, Sicherheitsvergleich, Interpolated Handler, Raw Literals, Escapes, Normalisierung