0Pricing
C# Academy · Lektion

Ranges mit Arrays und Zeichenfolgen

Erstellen Sie Ausschnitte aus Arrays, Spans und Teilzeichenfolgen.

Ranges mit Arrays und Zeichenfolgen ist eine kostenlose C# Academy-Lektion auf CoddyKit. Dies ist Lektion 3 von 4. Du kannst die komplette Lektion unten kostenlos lesen – dann übst du sie direkt im Browser mit einem integrierten Code-Editor und einem KI-Tutor rund um die Uhr. Sie ist Teil des C# Academy-Lernpfads, und dein Fortschritt wird über Web und CoddyKit-App synchronisiert. Der C# Academy-Kurs umfasst insgesamt 4 Lektionen.

Arrays ausschneiden

Die häufigste Verwendung von Bereichen ist das Ausschneiden von Array-Ausschnitten. array[1..3] gibt ein neues Array zurück, das die ausgewählten Elemente enthält.

using System;

int[] data = { 10, 20, 30, 40, 50 };
int[] middle = data[1..3];
Console.WriteLine(string.Join(",", middle)); // 20,30

Array-Ausschnitte sind Kopien

Bei Arrays reserviert ein Bereichsausschnitt ein neues Array und kopiert die Elemente hinein. Änderungen am Ausschnitt wirken sich nicht auf das Original aus.

using System;

int[] original = { 1, 2, 3, 4 };
int[] slice = original[0..2];
slice[0] = 99;
Console.WriteLine(original[0]); // 1 (unchanged)
Console.WriteLine(slice[0]);    // 99

Teilzeichenfolgen mit Range

Der Indexer von string unterstützt Range. Dadurch erhalten Sie Teilzeichenfolgen, ohne Substring mit Versätzen und Längen aufzurufen.

using System;

string text = "Hello, World";
string hello = text[0..5];
Console.WriteLine(hello); // Hello

Zeichenfolgen-Ausschnitte vom Ende

Kombinieren Sie Bereiche mit ^, um das Ende einer Zeichenfolge auszuwählen, beispielsweise eine Dateierweiterung.

using System;

string file = "report.csv";
string ext = file[^3..];
Console.WriteLine(ext); // csv

Einzelnes Zeichen mit Index

Die Indizierung einer Zeichenfolge mit einem einzelnen Index gibt ein char zurück. Verwenden Sie ^1 für das letzte Zeichen.

using System;

string s = "Coddy";
char last = s[^1];
Console.WriteLine(last); // y

Das erste oder letzte Element entfernen

Mit Bereichen mit offenem Ende lässt sich ein Element ganz einfach entfernen: ..^1 entfernt das letzte, 1.. das erste Element.

using System;

string quoted = "[value]";
string inner = quoted[1..^1];
Console.WriteLine(inner); // value

Eine Zeichenfolge in Teile aufteilen

Sie können Text anhand einer bekannten Position mithilfe von zwei Bereichsausschnitten aufteilen.

using System;

string code = "2026-05-30";
string year = code[..4];
string month = code[5..7];
string day = code[8..];
Console.WriteLine(year + " / " + month + " / " + day); // 2026 / 05 / 30

Spans für Ausschnitte ohne Kopieren

Wenn Sie einen Ausschnitt ohne Allokation benötigen, verwenden Sie AsSpan(). Ein Span-Ausschnitt ist ein Fenster über dem ursprünglichen Speicher und keine Kopie.

using System;

ReadOnlySpan<char> span = "Hello, World".AsSpan();
ReadOnlySpan<char> word = span[7..];
Console.WriteLine(word.ToString()); // World

Bereiche in Schleifen

Sie können direkt mit foreach über ein ausgeschnittenes Array iterieren.

using System;

int[] data = { 2, 4, 6, 8, 10 };
foreach (int n in data[1..4])
    Console.Write(n + " "); // 4 6 8
Console.WriteLine();

Grenzen werden geprüft

Ausschnitte außerhalb des gültigen Bereichs lösen ArgumentOutOfRangeException aus. Dadurch schlagen versehentliche Lesezugriffe über die Grenzen hinaus sofort fehl, anstatt Daten zu beschädigen.

using System;

int[] d = { 1, 2, 3 };
try { var _ = d[1..10]; }
catch (ArgumentOutOfRangeException) { Console.WriteLine("slice out of bounds"); }

Ein praktischer Parser

Hier ist ein winziger Parser, der mithilfe von Bereichen und IndexOf einen Namen und eine Domäne aus einer E-Mail-Adresse extrahiert.

using System;

string email = "ada@coddy.dev";
int at = email.IndexOf('@');
string user = email[..at];
string domain = email[(at + 1)..];
Console.WriteLine(user + " | " + domain); // ada | coddy.dev

Schnelltest

Prüfen Sie Ihr Verständnis von Bereichsausschnitten für Arrays und Zeichenfolgen.

Zusammenfassung

Sie haben gelernt, wie Bereiche auf Arrays und Zeichenfolgen angewendet werden.

  • array[1..3] gibt ein neues, kopiertes Array zurück.
  • string[a..b] gibt eine Teilzeichenfolge zurück; ein einzelner Index gibt ein char zurück.
  • ..^1 und 1.. entfernen jeweils ein Element.
  • AsSpan() erstellt Ausschnitte ohne Allokation.

Häufig gestellte Fragen

Ist die Lektion „Ranges mit Arrays und Zeichenfolgen“ kostenlos?

Ja — der vollständige Text von „Ranges mit Arrays und Zeichenfolgen“ ist hier im Web kostenlos zu lesen. Um sie interaktiv zu üben (integrierter Code-Editor und 24/7 KI-Tutor) und den Rest des C# Academy-Kurses freizuschalten, upgrade auf CoddyKit PRO. Der C# Academy-Kurs umfasst insgesamt 4 Lektionen.

Was lerne ich in „Ranges mit Arrays und Zeichenfolgen“?

Erstellen Sie Ausschnitte aus Arrays, Spans und Teilzeichenfolgen. Du übst C# Academy mit praktischem Code, den du direkt im Browser ausführst, und ein 24/7 KI-Tutor beantwortet deine Fragen während du die Lektion bearbeitest.

Brauche ich Erfahrung, um C# Academy zu starten?

Keine Vorkenntnisse erforderlich. C# Academy auf CoddyKit ist für Anfänger bis fortgeschrittene Lernende strukturiert, sodass du hier starten oder von Anfang an beginnen und in deinem eigenen Tempo voranschreiten kannst. Dies ist Lektion 3 von 4.

Wie lange dauert die Lektion „Ranges mit Arrays und Zeichenfolgen“?

Die meisten CoddyKit-Lektionen dauern etwa 5–10 Minuten. Jede ist kompakt und interaktiv, sodass du stetig Fortschritte machst und genau dort weitermachst, wo du aufgehört hast – im Web und in der App.

Kann ich in dieser C# Academy-Lektion Code schreiben und ausführen?

Ja. Jede C# Academy-Lektion enthält einen integrierten Code-Editor, sodass du echten Code direkt in deinem Browser schreibst und ausführst und sofort KI-Feedback erhältst — ohne lokale Einrichtung erforderlich.

Alle Lektionen in diesem Kurs

  1. Der Index-Typ und der ^-Operator
  2. Der Range-Typ und der ..-Operator
  3. Ranges mit Arrays und Zeichenfolgen
  4. Benutzerdefinierte Typen mit Range-Unterstützung
← Zurück zu C# Academy