我正在尝试使用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/