Avatar ·

如何在 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 个字符的部分。并且结果要是普通的