替换字符串中的出现

时间:2019-05-20 16:56:10

标签: swift

我想替换String中的第一个匹配项,然后替换第二个。

我还没有尝试过

例如:

var mString = "my car is black, my phone is black"

我想将第一个黑色替换为蓝色,第二个黑色替换为红色

1 个答案:

答案 0 :(得分:0)

使用新字符串创建一个数组。使用range(of:)在字符串中找到第一个匹配子字符串“ black”的范围。并使用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)
  

我的车是蓝色的,我的手机是红色的

选中Swift String Cheat Sheet