Ich suche nach einer Möglichkeit, Zeichen in einem Swift String
zu ersetzen.
Beispiel: "Das ist mein String"
Ich würde gerne " " durch "+" ersetzen, um "Das+ist+mein+String" zu erhalten.
Wie kann ich das erreichen?
Ich suche nach einer Möglichkeit, Zeichen in einem Swift String
zu ersetzen.
Beispiel: "Das ist mein String"
Ich würde gerne " " durch "+" ersetzen, um "Das+ist+mein+String" zu erhalten.
Wie kann ich das erreichen?
Swift 5.5
Ich benutze diese Erweiterung:
extension String {
func replaceCharacters(characters: String, toSeparator: String) -> String {
let characterSet = CharacterSet(charactersIn: characters)
let components = components(separatedBy: characterSet)
let result = components.joined(separator: toSeparator)
return result
}
func wipeCharacters(characters: String) -> String {
return self.replaceCharacters(characters: characters, toSeparator: "")
}
}
Verwendung:
"<34353 43434>".replaceCharacters(characters: "< >", toSeparator:"+") // +34353+43434+
"<34353 43434>".wipeCharacters(characters: "< >") // 3435343434
Swift 3 Lösung basierend auf Ramis' Antwort:
extension String {
func withReplacedCharacters(_ characters: String, by separator: String) -> String {
let characterSet = CharacterSet(charactersIn: characters)
return components(separatedBy: characterSet).joined(separator: separator)
}
}
Versucht, einen geeigneten Funktionsnamen gemäß der Swift 3 Namenskonvention zu finden.
Eine Kategorie, die einen vorhandenen veränderbaren String verändert:
extension String
{
mutating func replace(originalString:String, withString newString:String)
{
let replacedString = self.stringByReplacingOccurrencesOfString(originalString, withString: newString, options: nil, range: nil)
self = replacedString
}
}
Verwendung:
name.replace(" ", withString: "+")
CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.