@H_502_2@
先介绍一下Swift String 自身的方法,后面介绍简单的使用方法
1、截取前面5个字符
let substr = string.prefix(5)@H_502_2@
2、截取后面5个字符
let substr = string.suffix(5)@H_502_2@
3、获取下标 N 到 M 的字符(0 <= N < M <= string.count)
// let string = "12345678" let indexN = string.index(str.startIndex,offsetBy: n) let indexM = string.index(str.startIndex,offsetBy: m) let substr = string[indexN..<indexM] // 当 n = 1, m = 3 ; substr = "23"@H_502_2@
下面介绍String截取的简单使用方式,需要使用extension来实现
先看看效果
let str = "1234567890" let str1 = str[6] // 获取某一个下标的字符串 print(str1) // 7 let str2 = str[2..<6] // 获取下标 n到m的字符串 0 <= n < m <= str.count print(str2) // 3456 let str3 = str[2,6] // 获取下标n 长度len 的字符串 print(str3) // 345678 let str4 = str.substring(to: 5) //从 0 到 n个 ,也就是前面n个字符 print(str4) // 12345 let str5 = str.substring(from: 5) // 从 n 到 尾 print(str5) // 67890@H_502_2@
这样用是不是非常方便呢,下面看看实现extension
// MARK: - 字符串截取 extension String { /// String使用下标截取字符串 /// string[index] 例如:"abcdefg"[3] // c subscript (i:Int)->String{ let startIndex = self.index(self.startIndex,offsetBy: i) let endindex = self.index(startIndex,offsetBy: 1) return String(self[startIndex..<endindex]) } /// String使用下标截取字符串 /// string[index..<index] 例如:"abcdefg"[3..<4] // d subscript (r: Range<Int>) -> String { get { let startIndex = self.index(self.startIndex,offsetBy: r.lowerBound) let endindex = self.index(self.startIndex,offsetBy: r.upperBound) return String(self[startIndex..<endindex]) } } /// String使用下标截取字符串 /// string[index,length] 例如:"abcdefg"[3,2] // de subscript (index:Int,length:Int) -> String { get { let startIndex = self.index(self.startIndex,offsetBy: index) let endindex = self.index(startIndex,offsetBy: length) return String(self[startIndex..<endindex]) } } // 截取 从头到i位置 func substring(to:Int) -> String{ return self[0..<to] } // 截取 从i到尾部 func substring(from:Int) -> String{ return self[from..<self.count] } }@H_502_2@ @H_502_2@
@H_502_2@
@H_502_2@
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。