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的更多相关文章

  1. Python 字符串 (3) 持续更新

    字符串操作 虽然字符串也是一种序列,但是它和元组一样,不可变的.当你想对它修改时,会引发异常.如 >>> strings = "Let's go">> ...

  2. 学习Swift -- 数组(Array) - 持续更新

    集合类型--数组 Array是Swift中的一种集合类型:数组,数组是使用有序列表储存同一类型的多个值,与OC的NSArray的最大不同是,Swift的数组是值类型,OC的数组是引用类型 声明数组的方 ...

  3. Numpy 对于矩阵的操作持续更新

    >>> import numpy as np >>> a = np.random.randint(10,size=(5,5)) >>> a arr ...

  4. MySQL日常运维操作---持续更新

    1.查看当前连接数: 这些参数都是什么意思呢? Threads_cached ##mysql管理的线程池中还有多少可以被复用的资源 Threads_connected ##打开的连接数 Threads ...

  5. js 常用操作 -- 持续更新

    替换数组中某一元素: array.splice(2, 1, '哈哈'); // 2 表示指定数组中2下标元素,1表示要删除的项数,哈哈 是替换后的值 在数组中某元素之前增加元素: array.spli ...

  6. jgGrid常用操作--持续更新

    最近有使用到jqGrid框架,有个需求是单击某个字段,比如name,然后把id带过去执行一个function,网上有说用线获取选中行,然后再得到id的方法,此方法经实验,必须要先选中才行,在用户没有进 ...

  7. [Swift]字符串(String类、NSString类)常用操作

    NS是Cocoa类对象类型的前缀,来源于乔布斯建立的另一家公司--NeXTNSString的使用方法,和Swift语言中的String有很多相似之处. 1.字符串的定义String类 var str1 ...

  8. 【oracle笔记1】基础知识大集锦:增删改,数据类型,用户操作,持续更新中···

    什么是数据库?数据库就是用来存储和管理数据的仓库.首先我来简单介绍一下各数据库的背景,常见的数据库如下,oracle:甲骨文公司(市场占用率最高),oracle也是一个公司名,翻译过来就是甲骨文的意思 ...

  9. 前端深入之js篇丨Array数组操作从入门到成神Up Up Up,持续更新中

    写在前面 随着前端深入的不断学习,发现数组这个数据结构在前端中有着相当大的存在感,由于我初学前端的时候并没有系统性的学习数组,所以我将通过这篇文章同你一起学习数组,希望我们能一起进步,学会熟练操作数组 ...

随机推荐

  1. Eureka和zookeeper都可以提供服务注册与发现的功能,请说说两个的区别?

    Zookeeper保证了CP(C:一致性,P:分区容错性),Eureka保证了AP(A:高可用) (1)当向注册中心查询服务列表时,我们可以容忍注册中心返回的是几分钟以前的信息,但不能容忍直接down ...

  2. Elasticsearch 在部署时,对 Linux 的设置有哪些优化方法 ?

    1.关闭缓存 swap; 2.堆内存设置为:Min(节点内存/2, 32GB); 3.设置最大文件句柄数: 4.线程池+队列大小根据业务需要做调整: 5.磁盘存储 raid 方式--存储有条件使用 R ...

  3. 说出 5 个 JDK 1.8 引入的新特性?

    Java 8 在 Java 历史上是一个开创新的版本,下面 JDK 8 中 5 个主要的特性: Lambda 表达式,允许像对象一样传递匿名函数 Stream API,充分利用现代多核 CPU,可以写 ...

  4. 单片,SOA 和微服务架构有什么区别?

    单片架构类似于大容器,其中应用程序的所有软件组件组装在一起并紧密 封装.第一个面向服务的架构是一种相互通信服务的集合.通信可以涉及简单的数 据传递,也可以涉及两个或多个协调某些活动的服务.微服务架构是 ...

  5. 学习Redis(二)

    1.Redis应用场景 1.缓存(键过期时间) 1) 缓存session会话 2) 缓存用户信息,找不到再去mysql查,查到然后回写到redis 3) 商城优惠卷过期时间 2.排行榜(列表& ...

  6. Netty之非阻塞处理

    Netty 是一个异步的.基于事件驱动的网络应用框架,用以快速开发高性能.高可靠性的网络 IO 程序. 一.异步模型 同步I/O : 需要进程去真正的去操作I/O: 异步I/O:内核在I/O操作完成后 ...

  7. Anaconda 怎么安装cv2

    Anaconda run python程序的时候,如果有import cv2, 但是遇到报错的时候, 可以考虑在anaconda 中安装opencv, 安装过程非常简单. 什么是opencv , op ...

  8. React 可视化开发工具 Shadow Widget 非正经入门(之五:指令式界面设计)

    本系列博文从 Shadow Widget 作者的视角,解释该框架的设计要点.本篇解释 Shadow Widget 中类 Vue 的控制指令,与指令式界面设计相关. 1. 指令式界面设计 Vue 与 A ...

  9. Android Studio连接SQLite数据库与SQLite Studio实时同步的实现

    最近学习用到了android开发连接数据库这一块,发现连接成功后,都要先访问安卓项目的数据库路径data/data/项目/databases,然后把对应的db文件拷出来,再在SQLite的可视化工具中 ...

  10. js判断时间格式不能超过30天

    let first = this.data.date //开始时间 let second = e.detail.value //结束时间 var data1 = Date.parse(first.re ...