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)
}
输出结果:

Swift字符串操作-持续更新-2022的更多相关文章
- Python 字符串 (3) 持续更新
字符串操作 虽然字符串也是一种序列,但是它和元组一样,不可变的.当你想对它修改时,会引发异常.如 >>> strings = "Let's go">> ...
- 学习Swift -- 数组(Array) - 持续更新
集合类型--数组 Array是Swift中的一种集合类型:数组,数组是使用有序列表储存同一类型的多个值,与OC的NSArray的最大不同是,Swift的数组是值类型,OC的数组是引用类型 声明数组的方 ...
- Numpy 对于矩阵的操作持续更新
>>> import numpy as np >>> a = np.random.randint(10,size=(5,5)) >>> a arr ...
- MySQL日常运维操作---持续更新
1.查看当前连接数: 这些参数都是什么意思呢? Threads_cached ##mysql管理的线程池中还有多少可以被复用的资源 Threads_connected ##打开的连接数 Threads ...
- js 常用操作 -- 持续更新
替换数组中某一元素: array.splice(2, 1, '哈哈'); // 2 表示指定数组中2下标元素,1表示要删除的项数,哈哈 是替换后的值 在数组中某元素之前增加元素: array.spli ...
- jgGrid常用操作--持续更新
最近有使用到jqGrid框架,有个需求是单击某个字段,比如name,然后把id带过去执行一个function,网上有说用线获取选中行,然后再得到id的方法,此方法经实验,必须要先选中才行,在用户没有进 ...
- [Swift]字符串(String类、NSString类)常用操作
NS是Cocoa类对象类型的前缀,来源于乔布斯建立的另一家公司--NeXTNSString的使用方法,和Swift语言中的String有很多相似之处. 1.字符串的定义String类 var str1 ...
- 【oracle笔记1】基础知识大集锦:增删改,数据类型,用户操作,持续更新中···
什么是数据库?数据库就是用来存储和管理数据的仓库.首先我来简单介绍一下各数据库的背景,常见的数据库如下,oracle:甲骨文公司(市场占用率最高),oracle也是一个公司名,翻译过来就是甲骨文的意思 ...
- 前端深入之js篇丨Array数组操作从入门到成神Up Up Up,持续更新中
写在前面 随着前端深入的不断学习,发现数组这个数据结构在前端中有着相当大的存在感,由于我初学前端的时候并没有系统性的学习数组,所以我将通过这篇文章同你一起学习数组,希望我们能一起进步,学会熟练操作数组 ...
随机推荐
- 什么是 FutureTask?使用 ExecutorService 启动任务?
在 Java 并发程序中 FutureTask 表示一个可以取消的异步运算.它有启动和取消 运算.查询运算是否完成和取回运算结果等方法.只有当运算完成的时候结果才 能取回,如果运算尚未完成 get 方 ...
- 手撕代码:leetcode 309最佳买卖股票时机含冷冻期
转载于:https://segmentfault.com/a/1190000014746613 给定一个整数数组,其中第i个元素代表了第i天的股票价格. 设计一个算法计算出最大利润.在满足以下约束条件 ...
- Flask-Script使用教程
Flask使用第三方脚本 一个干净的项目准备: 一个干净的Flask项目连接地址: https://pan.baidu.com/s/123TyVXOFvh5P7V8MbyMfDg 话不多说,上菜: 1 ...
- 学习openldap03
ldap统一认证架构 一.ldap目录服务介绍什么是目录服务? 目录是一类为了浏览和搜索数据而设计的特殊的数据库.例如,为人所熟知的微软公司的活动目录(active directory)就是目录数据 ...
- 图灵机器人 V1 和 V2 接入方法
API1.0使用方法: import requests import json import yuyinhecheng as hc def Tuling(words): Tuling_API_ ...
- 【Azure Developer】使用PowerShell Where-Object方法过滤多维ArrayList时候,遇见的诡异问题 -- 当查找结果只有一个对象时,返回结果修改了对象结构,把多维变为一维
问题描述 编写PowerShell脚本,以多维(3维)数组中第二维度的值进行过滤,并打印出结果 #三维数组源数据 "A", "11", "Cheng ...
- Spring Security OAuth 笔记
1 单点登录 关于单点登录的原理,我觉得下面这位老哥讲的比较清楚,有兴趣可以看一下,下面我把其中的重点在此做个笔记总结 https://juejin.cn/post/6844904079274197 ...
- 驳《我不是很懂 Node.js 社区的 DRY 文化》
今天在群里有人讨论方老师的文章<我不是很懂 Node.js 社区的 DRY 文化>,我也看了一遍,槽点太多,不知道如何下笔. 方老师分析了几个依赖最多的 npm 包,每个都只有不到百行代码 ...
- Java中jdk安装与环境变量配置
Java中jdk安装与环境变量配置 提示:下面是jdk1.7和jdk1.8的百度网盘链接 链接:https://pan.baidu.com/s/1SuHf4KlwpiG1zrf1LLAERQ 提取码: ...
- 【转载】【zabbix】自定义监控项key值
[转载]https://www.cnblogs.com/zhenglisai/p/6547402.html [zabbix]自定义监控项key值 说明: zabbix自带的默认模版里包括了很多监控 ...