我正在尝试使用inertcontentsof循环查找所有“\”字符,并在其前面插入另一个“\”字符。问题是,如果需要插入字符,我并不总是知道索引。
例如,我知道我想在索引3中插入“\”:
myString.insertContentsOf("\\".characters, at: myString.startIndex.advancedBy(3))
如果我不知道索引怎么做?
我试过下面的循环,但没有任何运气。

for words in inputArray {
    for char in words {
        if char == "\\" {
            words.insertContentsOf("\\".characters, at: char)
        }
    }
}

at: char因为我试图将字符转换为索引而大喊大叫,我得到了索引,但不知道如何修复它。
编辑:由于某种原因,当我尝试将它放入函数时,它不会被调用。
func GenerateString(inputArray:[String])->String {

inputArray.map {
    $0.stringByReplacingOccurrencesOfString("\\", withString: "\\\\")
}

let joiner = "|"
let joinerString = inputArray.joinWithSeparator(joiner)

return ("Result: \(joinerString)")
}

let example = ["hello", "world", "c:\Program File\Example"]
GenerateString(example)

结果:
“你好世界C:\程序文件\示例”

最佳答案

改为使用stringByReplacingOccurrencesOfString

words.stringByReplacingOccurrencesOfString("\\", withString: "\\\\")

关于string - swift :insertContentsOf,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/34942764/

10-10 19:58