Rõ ràng trước Swift 3, một số Range<String.Index>
có thuộc tính count
. Trong khi chuyển sang Swift 3, tôi nhận thấy rằng thuộc tính count
này đã biến mất. Làm cách nào để tính khoảng cách giữa 2 String.Index
es trong Swift 3?Tính số đếm trong Swift 3
8
A
Trả lời
12
Kể từ Swift 3, tất cả các tính toán chỉ mục được thực hiện bởi chính bộ sưu tập, so sánh SE-0065 – A New Model for Collections and Indices khi phát triển Swift.
Ví dụ:
let string = "abc 1234 def"
if let range = string.range(of: "\\d+", options: .regularExpression) {
let count = string.distance(from: range.lowerBound, to: range.upperBound)
print(count) // 4
}
Trên thực tế, String
là không một bộ sưu tập trong Swift 3, nhưng nó có những phương pháp như tốt và họ được chuyển tiếp đến các dây CharacterView
. Bạn nhận được kết quả tương tự với
let count = string.characters.distance(from: range.lowerBound, to: range.upperBound)
Kể từ Swift 4, chuỗi là bộ sưu tập (một lần nữa).
Các vấn đề liên quan
- 1. Đếm số hàng trong trang tính
- 2. managedObjectContext trong Swift 3
- 3. NSNotifications trong Swift 3
- 4. Nút ẩn trong Swift 3
- 5. Nhiều CGAffineTransforms trong Swift 3
- 6. UIButton Padding trong Swift 3
- 7. NSFetchedResultsController deleteCache trong Swift 3
- 8. UIView isKindOfClass trong Swift 3
- 9. Swift 3 và CGContextDrawImage
- 10. Đếm số thuộc tính (chuỗi) của đối tượng trong C#
- 11. Swift 3: atomic_compare_exchange_strong
- 12. Khai báo URL trong Swift 3
- 13. CGPath không làm việc trong Swift 3
- 14. Alamofire trong Swift 3 với iOS 8
- 15. dispatch_barrier_async tương đương trong Swift 3
- 16. cách đếm số '#' trong chuỗi?
- 17. JSONSerialization với Swift 3
- 18. Loại và chỉ số tùy chọn Swift Array (Beta 3)
- 19. Số đếm trong Lua?
- 20. Swift 3 - dynamic vs @objc
- 21. Swift 3: Decimal để int
- 22. Đếm số hàng trong RDD
- 23. Swift 3: Date vs NSDate?
- 24. Nhận ngày hiện tại trong Swift 3?
- 25. Xử lý lỗi trong Swift 3
- 26. MD5 của dữ liệu trong Swift 3
- 27. Tính linh hoạt trong Swift
- 28. UIView.animate - Swift 3 - hoàn thành
- 29. Swift 3 Alamofire multipart upload
- 30. Swift 3 và NumberFormatter (.currency) == ¤?