Ich habe mir die Rust Dokumente für String
angesehen, aber ich kann nicht finde einen Weg, einen Teilstring zu extrahieren.
Gibt es eine Methode wie JavaScript substr
in Rust? Wenn nicht, wie würden Sie es umsetzen?
Der nächstgelegene Wert ist wahrscheinlich slice_unchecked
, aber er verwendet Byte-Offsets anstelle von Zeichenindizes und ist mit unsafe
gekennzeichnet.
Sie können die Methode as_str
für Chars
Iterator, um einen &str
slice zurück zu bekommen, nachdem Sie auf den Iterator getreten sind . Um also die ersten start
-Zeichen zu überspringen, können Sie
Wenn Sie nun auch die Länge begrenzen wollen, müssen Sie zuerst die Byte-Position des length
-Zeichens herausfinden:
Dies könnte ein kleiner Kreisverkehr sein, aber Rust versteckt nichts vor Ihnen, das CPU-Zyklen in Anspruch nehmen könnte. Das heißt, ich frage mich, warum es noch keine Kiste gibt, die eine substr
Methode anbietet.
Für my_string.substring(start, len)
-ähnliche Syntax können Sie ein benutzerdefiniertes Merkmal schreiben: