ToB企服应用市场:ToB评测及商务社交产业平台
标题:
Swift字符串操作-持续更新-2022
[打印本页]
作者:
忿忿的泥巴坨
时间:
2022-6-20 20:39
标题:
Swift字符串操作-持续更新-2022
Swift字符串追加
var str = "OC"
str.append(" Swfit")
print(str)
// 输出结果: OC Swift
复制代码
输出结果:
Swift获取字符串长度
let str = String(format: "数字%.2f", 333.333)
// 获取长度
print(str.count)
// 输出结果: 8
复制代码
输出结果:
Swfit计算字符串中子字符串出现的次数
Swfit计算字符串中字符的出现次数
Swfit统计字符串中指定字符的个数
Swfit计算指定字符在字符串中出现的次数
1 override func viewDidLoad() {
2 super.viewDidLoad()
3
4 let text = "swfitJJUKKswiftnnytuswfitssssswfittttaaee"
5 let num = subStringCount(str: text, substr: "swfit")
6 print("swfit在字符串中出现了\(num)次")
7 }
8
9
10 /// 计算字符串中子字符串出现的次数
11 /// - Parameters:
12 /// - str: 字符串
13 /// - substr: 子字符串
14 /// - Returns: 数量
15 func subStringCount(str: String, substr: String) -> Int {
16 { $0.isEmpty ? 0 : $0.count - 1 } ( str.components(separatedBy: substr))
17 }
18
19 //参考 https://stackoom.com/en/question/29Cdr
复制代码
输出结果:
Swift字符串的子串
1 // MARK:字符串的子串
2 // 建议:一般使用NSString中转
3 func test() {
4 let str = "好好学习,天天向上"
5 let ocStr = str as NSString
6 let s1 = ocStr.substring(with: NSMakeRange(2, 5))
7 print(s1)
8 }
复制代码
输出结果:
Swfit字符串遍历和长度的三种方法
1 override func viewDidLoad() {
2 super.viewDidLoad()
3
4 test1()
5 test2()
6 }
7
8
9
10 // MARK: 字符串遍历
11 func test1() {
12 let str = "需要遍历的字符串"
13 for byteStr in str {
14 print(byteStr)
15 }
16 }
17 // 输出结果: 需
18 // 输出结果: 要
19 // 输出结果: 遍
20 // 输出结果: 历
21 // 输出结果: 的
22 // 输出结果: 字
23 // 输出结果: 符
24 // 输出结果: 串
25
26 // MARK: 字符串的长度
27 func test2() {
28
29 let str = "Hello World 你好"
30 //1.返回指定编码的对应的字节数量
31 //UTF8的编码(0--4) 每个汉字是3个字节
32 print(str.lengthOfBytes(using: .utf8))
33
34 //2.字符串长度 -返回字符的个数
35 print(str.count);
36
37 //3.使用NSString中转
38 let ocStr = str as NSString
39 print(ocStr.length)
40 }
41 // 输出结果: 18
42 // 输出结果: 14
43 // 输出结果: 14
复制代码
输出结果:
Swift 字符串是否包含某字符
/// 字符串是否包含指定字符
func test() {
let label = UILabel()
label.text = "ADSSSwfitKohuo"
if label.text!.contains("Swfit") {
print("包含")
} else {
print("不包含")
}
// 输出结果: 包含
}
复制代码
Swfit拼接字符串
1 // MARK: - 字符串拼接
2 func test() {
3
4 let name = "张三"
5 let age = 30
6 let title:String? = "大BOSS"
7
8 //格式:\(变量或常量)
9 //let str = "\(name)\(age)\(title)"
10 let str = "\(name)\(age)\(title ?? "")"
11
12 print(str)
13
14 }
复制代码
输出结果:
Swfit格式化字符串
//MARK:格式化字符串
func test() {
let h = 6
let m = 36
let s = 55
let dateStr = "\(h):\(m):\(s)"
//使用格式字符串格式化
let dateStr1 = String(format:"%02d:%02d:%02d",h,m,s)
print(dateStr)
print(dateStr1)
}
复制代码
输出结果:
String类型的字符串截取|删除
String类型的字符串截取方法,使用的是字符串切片的原理,直接对原字符串做修改,所以必须用var定义变量名。
//String类型的字符串
var str = "123456"
//从后删除最后一个字符
str.removeLast()
//从后删除指定个数的字符
str.removeLast(2)
//从前删除第一个字符
str.remove(at: str.startIndex)
//删除脚标为3的字符
str.remove(at: str.index(str.startIndex, offsetBy: 3))
//删除自定义区间的字符串
str.removeSubrange(Range.init(NSMakeRange(2, 3), in: str)!)
//删除所有字符,变成空字符串
str.removeAll()
// 头部截取
let str = "ABCDEFG"
let str1 = str.prefix(2);
print(str1)
// 结果: AB
// 尾部截取
let str2 = str.suffix(3);
print(str2)
// 结果: EFG
复制代码
NSString类型的字符串截取
NSString类型的字符串截取方法,同于OC语言的字符串截取方法,不能修改字符串本身,截取后返回String类型,所以需要定义变量进行接收。
1 //NSString类型的字符串
2 let str: NSString = "123456"
3 //从开头截取到指定脚标
4 str.substring(to: 4)
5 //从指定脚标截取到结尾
6 str.substring(from: 3)
7 //自定义截取区间
8 str.substring(with: NSMakeRange(2, 3))
复制代码
来源:
https://www.cnblogs.com/weiios/p/16221321.html
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!
欢迎光临 ToB企服应用市场:ToB评测及商务社交产业平台 (https://dis.qidao123.com/)
Powered by Discuz! X3.4