Swift-字符串
1、字符串的遍历
//NSString 不支持一下字符串的遍历
let str = "我要飞的更高"
for c in str.characters{
print(c)
}
2、字符串的长度
let str = "hello world你好"
//1> 返回指定编码的对应的字节数量
//UTF8的编码(0-4个)每个汉字是3个字节
print(str.lengthOfBytesUsingEncoding(NSUTF8StringEncoding))
// print(str.lengthOfBytes(using: .utf8)) Switf 3.0
//2>字符的长度 - 返回字符的个数
print(str.characters.count)
//3>使用NSString 中转
/*
str as NSString
OC 的写法 (类型*)对象
Swift 中可以使用 '值'as 类型 类型转换
*/
let ocStr = str as NSString
print(ocStr.length)
3、字符串的拼接
let name = "老王"
let age = 18
let title: String? = "BOSS"
//\(变量/常量)\(变量/常量)
//拼接字符串需要注意 可选项Optional
let str = "\(name)\(age)\(title ?? "")"
print(str)
4、格式化
let h = 8
let m = 9
let s = 6
//使用格式字符串格式化
let dateStr1 = String(format: "%02d:%02d:%02d", h, m, s)
print(dateStr1)
5、字符串的子串
//建议:一般使用 NSString 作为中转,因为Swift取子串的方法一直在优化
let str = "我们一起去飞"
//1、NSString
let ocStr = str as NSString
let s1 = ocStr.substringWithRange(NSMakeRange(2,3))
print(s1)
//2、String 的方法
//let r = 0..<5
//Swift 2.0
//str.substringWithRange(<aRange: Range<Index>>)
//Swift 3.0
//str.substring(with: Range<Index>)
//startIndex position = 0
print(str.startIndex)
//endIndex position = str.length
print(str.endIndex)
根据给出字符串的长度截取子串
let s2 = str.substringFromIndex("我们".endIndex)
print(s2)
let s3 = str.substringFromIndex("adc".endIndex)
print(s3)
//取字符串的范围
guard let range = str.rangeOfString("一起")else {
print("没找到字符串")
return
}
//一定找到的范围
print(range)
print(str.substringWithRange(range))
Swift-字符串的更多相关文章
- 强大的swift字符串
Swift集百家之长,吸收了主流语言java,c,c++等的好的特性,所以它功能十分强大,今天我们就来看看它强大的字符串. 首先,我们带着这样几个问题去了解.理解swift的字符串. 1.swift字 ...
- [Swift]字符串(String类、NSString类)常用操作
NS是Cocoa类对象类型的前缀,来源于乔布斯建立的另一家公司--NeXTNSString的使用方法,和Swift语言中的String有很多相似之处. 1.字符串的定义String类 var str1 ...
- 【译】Swift 字符串速查表
[译]Swift 字符串速查表 2015-12-18 10:32 编辑: suiling 分类:Swift 来源:CocoaChina翻译活动 10 5585 Swift字符串 招聘信息: iOS高级 ...
- swift(二)swift字符串和字符和逻辑运算
/* 1.swift字符串和字符 2.构造字符串 3.字符串比较 4.数值运算 5.复制运算 6.关系运算 7.逻辑运算 8.区间运算 */ /* //数据 + 数据的处理 //字符信息+ 字符信息的 ...
- Swift字符串操作-持续更新-2022
Swift字符串追加 var str = "OC" str.append(" Swfit") print(str) // 输出结果: OC Swift 输出结果 ...
- Swift字符串类型
字符串初始化 1.初始化 let someString = "Some string literalvalue" let wiseWords = ...
- Swift字符串的插入、删除和替换-备
对应可变字符串可以插入.删除和替换,String提供了几个方法可以帮助实现这些操作.这些方法如下: splice(_:atIndex:).在索引位置插入字符串. insert(_:atIndex:). ...
- 【iOS】Swift字符串截取方法的改进
字符串截取方法是字符串处理中经常使用的基本方法.熟悉iOS的朋友都知道在基础类的NSString中有substringToIndex:,substringFromIndex:以及substringWi ...
- Swift字符串可变性
您可以通过将一个特定字符串分配给一个变量来对其进行修改,或者分配给一个常量来保证其不会被修改: var variableString = "Horse" variableStrin ...
- [Swift]字符串根据索引获取指定字符,依据ASCII实现字符和整数的相互转换
ASCII(American Standard Code for Information Interchange,美国信息交换标准代码)是基于拉丁字母的一套电脑编码系统,主要用于显示现代英语和其他西欧 ...
随机推荐
- ES6之箭头函数中的this
在讲箭头函数中的this之前我们先介绍一下普通函数中的this. 普通函数中的this: (1)this指向它的直接调用者 (2)默认的,非严格模式下,没找到直接调用者则指向window ( ...
- javaIO 流分析总结
Java中的流,可以从不同的角度进行分类. 按照数据流的方向不同可以分为:输入流和输出流. 按照处理数据单位不同可以分为:字节流和字符流. 按照实现功能不同可以分为:节点流和处理流. 输出流: 输入流 ...
- [51nod1058]求N!的长度
法1:stirling公式近似 $n! \approx \sqrt {2\pi n} {(\frac{n}{e})^n}$ (如果怕n不够大下式不成立,可以当数小于10000时用for求阶层) 也可以 ...
- From COM to COM 侯捷 1998.06.12
摘要: 本文簡介 C++ Object Model 和 Component Object Model 的基本概念,並引介四本書籍: 1. Inside The C++ Object Model 2. ...
- 消息队列--RabbitMQ(二)
1.常用的几种队列简介 RabbitMQ有五种常用的队列,分别是:简单队列.work模式.发布订阅模式.路由模式.主题(Topic)模式.其实发布订阅.路由.主题这三种模式都从属于与routingke ...
- 2018杭电多校第六场1009(DFS,思维)
#include<bits/stdc++.h>using namespace std;int a[100010];char s[20];int zhiren[100010];vector& ...
- Spark 官网提到的几点调优
1. 数据序列化 默认使用的是Java自带的序列化机制.优点是可以处理所有实现了java.io.Serializable 的类.但是Java 序列化比较慢. 可以使用Kryo序列化机制,通常比Java ...
- 51nod1521(set.upper_bound())
题目链接:https://www.51nod.com/onlineJudge/questionCode.html#!problemId=1521 题意:中文题诶- 思路: 我们先看一下set容器的三个 ...
- PCB生产企业自动化立体仓库/智能仓库库系统WMS/WCS解决方案
PCB生产企业自动化立体仓库/智能仓库库系统WMS/WCS解决方案 自动化立体仓库智能仓储系统WMS/WCS重要性调查 调查1(物流成本占总生产成本比例数据)1979年英国的第一次调查表明,在从原材料 ...
- Python爬取天气预报
实现爬取一天的天气预报 非常简单的一个小爬虫,利用的也是基本的request.BeautifulSoup.re库,算是简单的上手一个小测试吧 from urllib.request import ur ...