如何在 Swift 中正确使用子串 (substring)?
大家好!我是 Swift 新手,一直搞不懂如何截取字符串的一部分。在其他语言如 Python 或 JavaScript 中,这很简单:`"Hello"[0:4]` 或 `"Hello".substring(0, 4)`。但在 Swift 中,一切都很复杂。
这是我尝试的:
```swift
let text = "Hello, world!"
let sub = text[0...4] // 错误:'subscript' is unavailable
```
Xcode 报错说不能这样。然后我尝试了:
```swift
let start = text.index(text.startIndex, offsetBy: 0)
let end = text.index(text.startIndex, offsetBy: 4)
let range = start...end
let sub = text[range] // 得到的是 Substring,而不是 String
```
我得到了一个 `Substring`,而不是普通字符串。该怎么处理它?为什么不能像其他语言那样直接截取字符串的一部分?为什么一切都这么复杂?请解释一下如何在 Swift 中正确且简单地获取子串。我需要截取前 5 个字符、后 3 个字符,以及从第 3 到第 7 个字符的部分。并且结果要是普通的