Я хочу заменить первое вхождение в строке и второе.
Я еще ничего не пробовал
например:
var mString = "my car is black, my phone is black"
Я хочу заменить первый черный на синий, а второй черный на красный
Создать массив с новыми строками.Найдите диапазон первой подходящей подстроки «black» в строке, используя range(of:).И заменить на новую строку в диапазоне, используя метод replaceSubrange(_:with:).Затем продолжайте цикл до последнего элемента массива.
range(of:)
replaceSubrange(_:with:)
var mString = "my car is black, my phone is black" ["blue","red"].forEach { if let range = mString.range(of: "black") { mString.replaceSubrange(range, with: $0) } } print(mString)
моя машина синего цвета, мой телефон красного цвета
Check Swift String Cheat Sheet