我是 swift 的新手,但是从 ObjectiveC 背景来看,我试图通过单击按钮将文本字段的输入输入到 var 中。

现在,当我尝试使用“stringByTrimmingCharactersInSet”和许多其他选项删除空格时,它不起作用。这是我的代码,

    var someVariable = urlInputComponent.text!
    if someVariable.containsString(" "){
        someVariable = someVariable.stringByTrimmingCharactersInSet(NSCharacterSet.whitespaceCharacterSet())
        print(someVariable)

    }

我还尝试将结果分配给一个新的 var,
        let trimmed: String = someVariable.stringByTrimmingCharactersInSet(NSCharacterSet.whitespaceAndNewlineCharacterSet())
        print(trimmed)

但仍然无法删除空格。我的猜测是我对“未包装的值(value)”概念感到困惑,如果有人可以帮助我,那将非常有帮助。谢谢!

最佳答案

尝试另一种方式

 urlInputComponent.text! = urlInputComponent.text!.stringByReplacingOccurrencesOfString(" ", withString: "")

否则试试这个
let trimmed = "".join(urlInputComponent.text!.characters.map({ $0 == " " ? "" : String($0) }))
 print (trimmed)

10-08 00:19