Rust:
Teilstrings extrahieren

How to:

fn main() {
    let text = "Hallo, Rust-Entwickler!";
    let start = 7;
    let end = 11;
    let substring = &text[start..end];
    println!("Extrahierter Teilstring: '{}'", substring);
}

Ausgabe:

Extrahierter Teilstring: 'Rust'

Deep Dive

In der Rust-Programmierung ist String-Handling besonders wichtig und manchmal knifflig, da Rust Speichersicherheit garantiert. Historisch gesehen, waren Operationen auf Zeichenketten in vielen Sprachen fehleranfällig. Rust vermeidet viele dieser Probleme durch seine konsequente Behandlung von Strings als Byte-Arrays.

Andere Wege, um Teilstrings zu extrahieren, beinhalten Methoden wie .trim(), .split() und .matches(), die verschiedene Anwendungsfälle abdecken können. Zum Beispiel ist .trim() gut, um whitespace zu entfernen, während .split() hilfreich ist, um einen String auf Basis eines Trennzeichens zu teilen.

Die Spezifikation von Start- und Endindex innerhalb des Slicing-Vorgangs [start..end] berücksichtigt die Bytegrenzen von UTF-8 kodierten Zeichen, was in Rust unabdingbar ist, da ein naiver Ansatz, der einfach Byte-Positionen schneidet, gültige Zeichen zerstören kann.

Das Slicing ohne explizite Grenzen text[..] gibt den ganzen String zurück.

See Also