1.截取字符串
//定义一个字符串 \u{} 这种是UTF-*写法
let cafee = "caf\u{0065}\u{0301}"
let beg = cafee.startIndex
/* index 方法说明
* 第一个参数: 截取的起始位置 Int类型
* 第二个参数: 从起始位置往后需要截取的字符个数 Int类型
* 第三个参数: 字符最大截取的位置 Int类型
*/
let end = cafee.index(beg,offsetBy:3,limitedBy:cafee.endIndex)
cafee [beg ..< end!] //结果:caf
另外有一个比较便捷的方法,也可以实现同样的功能
String(cafee.characters.prefix(3)) //"caf"
2.插入字符串
if let index = cafee.characters.index(of:"f") {
cafee.insert(contentsOf:" asdc".characters, at: index) //"ca asdcfé"
}
3.替换字符串
if let cnIndex = cafee.characters.index(of:"f"){
/*replaceSubrange 方法说明
*第一个参数:传入一个需要替换的区间 Index格式
*第二个参数:传入一个需要替换的字符串
*/
cafee.replaceSubrange(cnIndex ..< cafee.endIndex, with: "hah") //"cahah"
}
4.分割字符串
let description = "你真的很 美 啊"
let desArr = description.characters.split(separator: " ").map(String.init) //["你真的很", "美", "啊"]