【发布时间】:2018-05-30 02:27:35
【问题描述】:
我有一个字符串类型的数组:
var Arr = ["apple", "banana", "orange", "grapes", "yellow banana", "urban"]
如何过滤数组中以我的关键字为前缀的每个单词? 现在我有了这个:
.filter { $0.contains(keyword) }
.sorted { ($0.hasPrefix(keyword) ? 0 : 1) < ($1.hasPrefix(keyword) ? 0 : 1) }
但如果我有关键字“ban”,它将返回“香蕉”、“黄色香蕉”和“城市”。 我只需要过滤数组元素中每个单词的前缀,就可以得到“香蕉”和“黄色香蕉”。
【问题讨论】:
-
如果你只想过滤,为什么要调用sorted()?一个简单的
.filter { $0.hasPrefix(keyword) }怎么样? -
@MartinR 谢谢,但这无济于事,就我而言,我认为我需要通过“”分隔符或其他方式拆分数组