小编典典

有什么方法可以替换 Swift String 上的字符?

all

我正在寻找一种方法来替换 Swift 中的字符String

示例:“这是我的字符串”

我想用“+”替换“”以获得“This+is+my+string”。

我怎样才能做到这一点?


阅读 123

收藏
2022-03-10

共1个答案

小编典典

此答案已 针对 Swift 4 & 5 进行了更新。如果您仍在使用 Swift 1、2 或 3,请查看修订历史记录。

你有几个选择。您可以按照建操作并使用replacingOccurrences()

let aString = "This is my string"
let newString = aString.replacingOccurrences(of: " ", with: "+", options: .literal, range: nil)

正如下面@cprcrack
所指出的,optionsandrange参数是可选的,因此如果您不想指定字符串比较选项或范围以在其中进行替换,则只需要以下内容。

let aString = "This is my string"
let newString = aString.replacingOccurrences(of: " ", with: "+")

或者,如果数据是这样的特定格式,您只是替换分隔字符,您可以使用components()将字符串分解为数组,然后您可以使用该join()函数将它们与指定的分隔符重新组合在一起.

let toArray = aString.components(separatedBy: " ")
let backToString = toArray.joined(separator: "+")

或者,如果您正在寻找不使用 NSString 的 API 的更 Swifty 解决方案,您可以使用它。

let aString = "Some search text"

let replaced = String(aString.map {
    $0 == " " ? "+" : $0
})
2022-03-10