在数组项中的字符串末尾添加附加文本

Add additional text at the end of a string in an array item

想在数组项中现有文本的末尾添加附加文本。我到目前为止的代码如下所示:

for var i = 0; i < arrMain.count; i++ {

    if (arrMain[i] as NSString).containsString("#ID-001") {

        println("OK")
        // Add additional text (eg. "Test") at the end of #ID-001 

    }  
}

每个尝试的组合都会覆盖我#ID-001...

或者使用您已有的 for 循环执行此操作,例如

var x = [ "a", "b", "c" ]

for index in 0 ..< x.count
{
    if x[index] == "b"
    {
        x[index] += "_hello"
    }
}

或使用Swift的map函数:

let y = x.map({ value -> String in return value == "b" ? value + "_hello" : value })

请注意,

  1. 第二个示例将复制数组。
  2. 您的数组必须是可变数组,例如let x = [ ... ] 不会工作。

假设我理解问题:

arrMain[i] = arrMain[i].stringByReplacingOccurrencesOfString("#ID-001", withString: "#ID-001Test")

尝试:

var arrMain:[AnyObject] = ["#ID-001"]

for var i = 0; i < arrMain.count; i++ {
    if (arrMain[i] as NSString).containsString("#ID-001") {
        arrMain[i] = (arrMain[i] as String) + "Test"
    }
}