过滤掉标点符号

时间:2017-02-24 20:51:21

标签: swift filter punctuation

struct Mirror {
    var size: Int
    var name: String
}
let mirrors = [(name: "Dorian", size: 24), (name: "Corinth", size: 33), (name: "Cruyf", size: 29), (name: "Lola", size: 46)]
let smallMirrors = mirrors.filter {$0.size < 33 }
print(smallMirrors)

问题在于Playgrounds的结果是[&#34; Dorian&#34;,24&#34; Cruyf,29&#34;] - 包括所有标记。

我想要一份清单 多利安24 克鲁伊夫29 不#34;&#34;或逗号

2 个答案:

答案 0 :(得分:1)

您可以通过smallMirrors

迭代元组
for (k,v) in smallMirrors{
    print(k, terminator: " ")
    print(v)
}

或者更好的解决方案,使用地图:

smallMirrors.map { (k,v) in
    print(k, v)
}

输出

Dorian 24
Cruyf 29

希望它有所帮助!

答案 1 :(得分:0)

如果您不希望引号和所有内容在同一行,您可以使用

import UIKit

struct Mirror {
    var size: Int
    var name: String
}
let mirrors = [(name: "Dorian", size: 24), (name: "Corinth", size: 33), (name: "Cruyf", size: 29), (name: "Lola", size: 46)]
let smallMirrors = mirrors.filter {$0.size < 33 }
smallMirrors.forEach{ print("\($0) \($1)", terminator:" " )}

输出:

Dorian 24 Cruyf 29 

通过修改&#34;终止符&#34;打印属性,您可以根据需要划分条目。如果您确定希望每个条目都在新行上,则只需完全删除终结符。通过将此功能方法应用于print语句,您可以灵活地添加任何分隔符,标点符号或将来可能需要的其他字符串而不会出现问题。