У меня есть массив индексов диапазона, полученный в результате поиска всех позиций нескольких коротких строк в одной длинной строке. Мне нужен массив этих отсортированных диапазонов от меньшего индекса до более крупного. Как я могу сортировать диапазоны?Как отсортировать массив Range <Index> в swift?
1
A
ответ
3
Swift 2(оригинальный ответ)
Вы можете использовать .startIndex
свойство каждого диапазона для сортировки диапазонов.
Пример:
let words = "Hello world"
let range1 = words.rangeOfString("world")!
let range2 = words.rangeOfString("Hello")!
let range3 = words.rangeOfString("o w")!
let ranges = [range1, range2, range3] // ["6..<11", "0..<5", "4..<7"]
let sortedRanges = ranges.sort { $0.startIndex < $1.startIndex }
sortedRanges // ["0..<5", "4..<7", "6..<11"]
Свифта 3
То же самое, но с использованием вместо .lowerBound
.startIndex
:
if let range1 = words.range(of: "world"),
range2 = words.range(of: "Hello"),
range3 = words.range(of: "o w") {
let ranges = [range1, range2, range3]
let sortedRanges = ranges.sorted { $0.lowerBound < $1.lowerBound }
sortedRanges // [{lowerBound 0, upperBound 5}, {lowerBound 4, upperBound 7}, {lowerBound 6, upperBound 11}]
}
Также отметим, что sort
теперь sorted
.
+1
Спасибо! Хороший пример, ясный и полезный! – VYT
Смежные вопросы
- 1. Swift: Как отсортировать массив <String>
- 2. Как отсортировать двумерный массив диапазонов в swift?
- 3. Как отсортировать типизированный массив в swift?
- 4. Как отсортировать массив массивов в Swift?
- 5. Как отсортировать массив по boolean в swift?
- 6. Как отсортировать массив объектов в Swift?
- 7. Как отсортировать многомерный массив в swift?
- 8. Swift - Как отсортировать массив пользовательского класса?
- 9. Как отсортировать словарь в Swift
- 10. Как отсортировать массив строк в java?
- 11. Int range array в массив строк в swift
- 12. Как отсортировать структуры по свойствам в Swift
- 13. Как отсортировать массив словарей по времени в swift
- 14. Swift Range Type endIndex
- 15. NSRange от Swift Range?
- 16. Как отсортировать массив строк?
- 17. Как отсортировать массив зависимостей?
- 18. Как отсортировать массив PHP?
- 19. Как отсортировать двумерный массив?
- 20. Как отсортировать объекты в будущем в Swift?
- 21. Как отсортировать массив изображений
- 22. Как отсортировать динамический массив
- 23. Как отсортировать массив структуры
- 24. Как отсортировать этот массив?
- 25. Как отсортировать ассоциативный массив?
- 26. Как отсортировать массив суффикса?
- 27. Как отсортировать этот массив
- 28. Как отсортировать многомерный массив?
- 29. Как отсортировать массив классов
- 30. Как отсортировать многомерный массив?
использовать функцию сортировки по массиву –
https://developer.apple.com/library/ios/documentation/Swift/Conceptual/Swift_Programming_Language/Closures.html –