【问题标题】:trimmingCharacters not work on iOS 10.3 Xcode8.3trimmingCharacters 不适用于 iOS 10.3 Xcode8.3
【发布时间】:2017-04-03 06:35:48
【问题描述】:

请帮帮我,我使用的是 Xcode 8.3(swift 3.1),函数 trimmingCharacters 不起作用。我的代码如下:

    func textField(_ textField: UITextField, shouldChangeCharactersIn range: NSRange, replacementString string: String) -> Bool {
if var searchStr = textField.text{
       let _searchStr = searchStr.trimmingCharacters(in: .whitespaces)
       print("After trimming:\(_searchStr)")
   }
}

文本字段中的输入是409 huỳnh,打印结果是409 huỳnh 不符合预期:409huỳnh

【问题讨论】:

    标签: ios swift string xcode8 ios10.3


    【解决方案1】:

    来自文档:

    通过从集合中包含的接收者字符的两端移除而生成的新字符串。

    删除字符串中的字符。

    您可以用正则表达式替换字符串中的空格(对应于.whitespaces 字符集):

    let _searchStr = searchStr.replacingOccurrences(of: "\\s", with: "", options: .regularExpression)
    

    【讨论】:

      【解决方案2】:

      您可以使用 Swift 5 Character 属性 isWhitespace 并过滤字符串中的所有非空格:

      let string = "409 huỳnh"
      let result = string.filter { !$0.isWhitespace }
      print(result)  // "409huỳnh"
      

      【讨论】:

        【解决方案3】:

        trimmingCharacters 仅删除前导和尾随空格。

        试试这个

        let _searchStr = searchStr.replacingOccurrences(" ", withString: "", options:.literal, range: nil)
        

        【讨论】:

          【解决方案4】:

          你可以使用

          let trimmedString = searchStr.stringByReplacingOccurrencesOfString(" ", withString: "")
          

          希望对你有帮助!

          【讨论】:

            【解决方案5】:

            Swift 3 中,您可以使用以下代码来解决问题

            let _searchStr = searchStr.replacingOccurrences(of: " ", with: "")
            

            【讨论】:

              【解决方案6】:

              Swift 4 替代

              因为 Swift 4 字符串又是序列。您可以使用过滤器来做到这一点。

              let _searchStr = searchStr.filter({ " ".contains($0) == false })
              

              【讨论】:

                猜你喜欢
                • 2023-04-09
                • 1970-01-01
                • 1970-01-01
                • 1970-01-01
                • 2014-04-06
                • 2018-11-27
                • 1970-01-01
                • 1970-01-01
                • 1970-01-01
                相关资源
                最近更新 更多