我有一个 String
Array
,我需要在每个字符串中修剪空格。请让我知道任何简单的方法,而无需循环循环循环。
ex: ["Apple ", "Bike ", " Cat", " Dog "]
我有这样的Array
。我希望所有这些空间都被修剪。
这是map
的好应用。用它将其在阵列中获取每个项目,然后应用trimmingCharacters(in:)
以从字符串的末端删除空格。
import Foundation // or UIKit or Cocoa
let array = ["Apple ", "Bike ", " Cat", " Dog "]
let trimmed = array.map { $0.trimmingCharacters(in: .whitespaces) }
print(trimmed) // ["Apple", "Bike", "Cat", "Dog"]
@Duncanc的评论是重要的一点,所以我在这里强调它:
@vacawama对地图语句的使用肯定比使用 对于循环,但我敢打赌,性能几乎完全相同。没有 魔术在这里。如果您需要检查阵列中的所有字符串 领先/落后空间,然后您需要迭代所有 字符串。这就是地图语句在内部所做的。它只是使用 功能性语法而不是命令性语法。
swift 3-4兼容
(基于 @vacawama的答案)
let items = ["Apple ", "Bike ", " Cat", " Dog "]
let trimmed = items.map({
return $0.trimmingCharacters(in: .whitespaces)
})
print(trimmed) // ["Apple", "Bike", "Cat", "Dog"]
我们可以将数组作为字符串加入,并可以更换空间。
喜欢,
let array = ["Apple ", "Bike ", " Cat", " Dog "]
var jointString = array.joinWithSeparator(",")
jointString = jointString.stringByReplacingOccurrencesOfString(" ", withString: "")
let newArray = jointString.componentsSeparatedByString(",")
print(newArray)