Und wenn Sie möchten, die letzte Teilkette in einem String ersetzen:
(Swift 3)
extension String
{
func replacingLastOccurrenceOfString(_ searchString: String,
with replacementString: String,
caseInsensitive: Bool = true) -> String
{
let options: String.CompareOptions
if caseInsensitive {
options = [.backwards, .caseInsensitive]
} else {
options = [.backwards]
}
if let range = self.range(of: searchString,
options: options,
range: nil,
locale: nil) {
return self.replacingCharacters(in: range, with: replacementString)
}
return self
}
}
Verbrauch:
let alphabet = "abc def ghi abc def ghi"
let result = alphabet.replacingLastOccurrenceOfString("ghi",
with: "foo")
print(result)
// "abc def ghi abc def foo"
Oder, wenn Sie den letzten Teilstring vollständig entfernen und aufräumen möchten:
let result = alphabet.replacingLastOccurrenceOfString("ghi",
with: "").trimmingCharacters(in: .whitespaces)
print(result)
// "abc def ghi abc def"