如何在Swift 4中对字符串进行子字符串化。
我想转换:
“你好,世界!”
进入:
“你好”
答案 0 :(得分:-3)
Swift没有内置函数可以简化此操作,因此我编写了一个简单的扩展程序,以获取与其他语言(如python)一样的功能,这些语言具有非常简单的子字符串功能。
扩展
在课程之外,为字符串添加此扩展名。
extension String {
func substring(start: Int, range: Int) -> String {
let characterArray = Array(self)
var tempArray:[Character] = []
let starting = start
let ending = start + range
for i in (starting...ending) {
tempArray.append(characterArray[i])
}
let finalString = String(tempArray)
return finalString
}
}
用法
let myString = "Hello, World!"
print(myString.substring(start: 0, range: 4))
此打印:
“你好”
工作原理
扩展名的工作方式是将字符串转换为单独的字符数组,然后创建一个循环,该循环将所需的字符附加到由函数的参数确定的新字符串中。
感谢您的光临。希望苹果尽快将其基本功能添加到他们的语言中!上面的代码有点混乱,因此如果有人要清理它,那就放心吧!