Text ersetzen und aufteilen
Transformieren Sie Strings mit Regex-Operationen.
Text ersetzen und aufteilen ist eine kostenlose Swift Academy-Lektion auf CoddyKit. Dies ist Lektion 4 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 Swift Academy-Lernpfads, und dein Fortschritt wird über Web und CoddyKit-App synchronisiert. Der Swift Academy-Kurs umfasst insgesamt 4 Lektionen.
Ersetzen und Aufteilen
Regexes dienen nicht nur der Suche. Swift-Zeichenfolgen können gefundene Texte ersetzen und anhand eines Musters aufgeteilt werden, sodass Zeichenfolgen ohne manuelle Schleifen umgewandelt werden können.
replacing(_:with:)
replacing(_:with:) gibt eine neue Zeichenfolge zurück, in der jeder Treffer des Musters durch den Ersetzungstext ausgetauscht wird.
let s = "a1b2c3"
let cleaned = s.replacing(/\d/, with: "*")
print(cleaned)Ganze Wörter ersetzen
Das Muster kann ein beliebiger Regex sein. Dadurch können Sie alle zusammenhängenden Ziffern auf einmal durch eine einzige Ersetzung ersetzen.
let s = "order 1234 done"
let masked = s.replacing(/\d+/, with: "#")
print(masked)Mit replace verändern
replace(_:with:) ändert eine var-Zeichenfolge direkt, anstatt eine Kopie zurückzugeben.
var text = "hello world"
text.replace(/o/, with: "0")
print(text)Mit einer Closure ersetzen
Die Closure-Variante von replacing(_:with:) erhält jeden Treffer und gibt die Ersetzung zurück. Dadurch sind berechnete Ersetzungen möglich.
let s = "a1 b2 c3"
let result = s.replacing(/\d+/) { match in
String((Int(match.0) ?? 0) * 10)
}
print(result)Erfassungen bei der Ersetzung verwenden
Innerhalb der Closure können Sie die Erfassungsgruppen des Treffers auslesen, um den Ersetzungstext zu erstellen.
let s = "2024-05"
let out = s.replacing(/(\d+)-(\d+)/) { m in
"\(m.2)/\(m.1)"
}
print(out)split(separator:)
Zeichenfolgen unterstützen split(separator:) mit einem Regex und teilen die Zeichenfolge an jeder Stelle auf, an der das Muster zutrifft.
let csv = "a,b;c,d"
let parts = csv.split(separator: /[,;]/)
print(parts)Anhand von Leerraum aufteilen
Eine häufige Aufgabe: Teilen Sie eine Zeichenfolge mit /\s+/ an jeder Folge von Leerraum in Wörter auf.
let line = "the quick brown"
let words = line.split(separator: /\s+/)
print(words.count)
print(words)Aufteilungen begrenzen
Der Parameter maxSplits begrenzt die Anzahl der Aufteilungen, sodass der Rest unverändert bleibt.
let s = "a-b-c-d"
let parts = s.split(separator: /-/, maxSplits: 1)
print(parts)Trimmen und Ersetzen
Kombinieren Sie mehrere Operationen: Ersetzen Sie zunächst unerwünschte Muster und teilen Sie die Eingabe anschließend auf, um sie in einer Pipeline zu bereinigen und zu tokenisieren.
let raw = " one,, two ,,three "
let cleaned = raw.replacing(/,+/, with: ",")
let items = cleaned.split(separator: ",").map { $0.trimmingCharacters(in: .whitespaces) }
print(items)replacing im Vergleich zu replacingOccurrences
Das Regex-basierte replacing arbeitet mit Mustern. Das ältere replacingOccurrences(of:with:) verarbeitet dagegen nur literale Teilzeichenfolgen. Bevorzugen Sie für musterbasierte Änderungen die Regex-Variante.
let s = "cat hat bat"
print(s.replacing(/[ch]at/, with: "X"))Kurze Überprüfung
Was ergibt "a1b2".replacing(/\d/, with: "-")?
Zusammenfassung
Sie können Treffer mit replacing(_:with:) (als Zeichenfolge oder Closure) und mit dem direkten replace ersetzen. Außerdem können Sie Zeichenfolgen mit split(separator:) und maxSplits anhand eines Regex aufteilen. Damit wird Regex zu einem vollständigen Werkzeugkasten für Textumwandlungen.
Häufig gestellte Fragen
Ist die Lektion „Text ersetzen und aufteilen“ kostenlos?
Ja — der vollständige Text von „Text ersetzen und aufteilen“ ist hier im Web kostenlos zu lesen. Um sie interaktiv zu üben (integrierter Code-Editor und 24/7 KI-Tutor) und den Rest des Swift Academy-Kurses freizuschalten, upgrade auf CoddyKit PRO. Der Swift Academy-Kurs umfasst insgesamt 4 Lektionen.
Was lerne ich in „Text ersetzen und aufteilen“?
Transformieren Sie Strings mit Regex-Operationen. Du übst Swift 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 Swift Academy zu starten?
Keine Vorkenntnisse erforderlich. Swift 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 4 von 4.
Wie lange dauert die Lektion „Text ersetzen und aufteilen“?
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 Swift Academy-Lektion Code schreiben und ausführen?
Ja. Jede Swift 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
- Regex-Literale und -Vergleiche
- Capture-Gruppen
- RegexBuilder-DSL
- Text ersetzen und aufteilen