此答案已 针对Swift 4和5 进行了 更新 。如果您仍在使用Swift 1、2或3,请参阅修订历史记录。
您有两种选择。您可以按照@jaumard的建议进行操作并使用
replacingOccurrences()
let aString = "This is my string"let newString = aString.replacingOccurrences(of: " ", with: "+", options: .literal, range: nil)
而且,正如下面@cprcrack所指出的那样,
optionsand
range参数是可选的,因此,如果您不想指定字符串比较选项或范围以在其中进行替换,则只需执行以下操作。
let aString = "This is my string"let newString = aString.replacingOccurrences(of: " ", with: "+")
或者,如果数据采用特定格式,例如您要替换的分隔字符,则可以使用
components()将字符串分成and数组的方式,然后可以使用
join()函数将它们与指定的分隔符放回去。
let toArray = aString.components(separatedBy: " ")let backToString = toArray.joined(separator: "+")
或者,如果您正在寻找不使用NSString API的更快速的解决方案,则可以使用它。
let aString = "Some search text"let replaced = String(aString.map { $0 == " " ? "+" : $0})


