gpt4 book ai didi

string - 如何使用纯 Swift 删除 String 中的空格?

转载 作者:可可西里 更新时间:2023-11-01 00:14:25 25 4
gpt4 key购买 nike

现在,我正在练习 Swift 语言。

我创建了一个 StringHelper 类。

它在 str 属性中保存一个字符串,并通过使用一个方法,它返回相同的不带空格的字符串。

class StringHelper {

let str:String

init(str:String) {
self.str = str
}

func removeSpace() -> String {
//how to code
}
}


let myStr = StringHelper(str: "hello swift")

myStr.removeSpace()//it should print 'helloswift'

我只想使用 Swift 语言...而不是 NSString 方法,因为我只是在练习使用 Swift。

最佳答案

这是一个使用filter 的函数式方法:

swift 1.2:

let str = "  remove  spaces please "

let newstr = String(filter(Array(str), {$0 != " "}))
println(newstr) // prints "removespacesplease"

swift 2/3:

let newstr = String(str.characters.filter {$0 != " "})
print(newstr)

思路是将String分解为Character数组,然后使用filter去除所有Character 不是空格 "",然后使用 String() 初始值设定项从数组中创建一个新字符串。


如果您还想删除换行符 "\n" 和制表符 "\t",您可以使用 contains:

swift 1.2:

let newstr = String(filter(Array(str), {!contains([" ", "\t", "\n"], $0)}))

swift 2/3:

let newstr = String(str.characters.filter {![" ", "\t", "\n"].contains($0)})

关于string - 如何使用纯 Swift 删除 String 中的空格?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32269373/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com