字符串初始化:
var emptyString = "" // 空字符串字面量
var anotherEmptyString = String() // 初始化 String 实例
// 两个字符串均为空并等价。
字符串判空:
if emptyString.isEmpty {
println("什么都没有")
}
// 打印输出:"什么都没有"
字符串编辑
var variableString = "Horse"
variableString += " and carriage"
// variableString 现在为 "Horse and carriage"
注:在oc中字符串的修改只能通过NSString和NSMutableString来定义字符串是否可变,在swift中可以通过定义ver和let来规定字符串是否可编辑。
字符串遍历
for character in "Dog! " { println(character)
} // D // o // g // ! //可直接通过for in遍历字符串中的字符
字符初始化
let yenSign: Character = "¥"
字符串中字符数量
方法countElements
let unusualMenagerie = "Koala , Snail , Penguin , Dromedary " println("unusualMenagerie has \(countElements(unusualMenagerie)) characters")
// 打印输出:"unusualMenagerie has 40 characters"
注:此处遍历得出的字符串中的数量并不一定与oc中NSString中的length相等。因为
NSString的 length 属性是基于利用 UTF-16 表示的十六位代码单元数字,而不是基于 Unicode 字符。swift中的utf16count与oc中的length表达一样的意思。
字符串与字符的连接
1.通过+号
let string1 = "hello"
let string2 = " there"
let character1: Character = "!"
let character2: Character = "?"
let character2: Character = "?"
let stringPlusCharacter = string1 + character1// 等于 "hello!"
let stringPlusString = string1 + string2// 等于 "hello there"
let characterPlusString = character1 + string1// 等于 "!hello"
let characterPlusCharacter = character1 + character2 // 等于 "!?"
2.通过+=号
var instruction = "look over"
instruction += string2 // instruction 现在等于 "look over there" var welcome = "good morning"
welcome += character1 // welcome 现在等于 "good morning!"
注:不能将字符或字符串添加到一个已存在的字符变量上,因为一个字符变量只能包含一个字符
字符串的插值
let multiplier = 3
let message = "\(multiplier) 乘以 2.5 是 \(Double(multiplier) * 2.5)" // message 是 "3 乘以 2.5 是 7.5"
注:括号内不能含有非转义双引号 (") 和反斜杠 (\),并且不能包含回车或换行符。
字符串比较
1.字符串相等
let quotation = "我们是一样一样滴."
let sameQuotation = "我们是一样一样滴." if quotation == sameQuotation {
println("这两个字符串被认为是相同的") }// 打印输出:"这两个字符串被认为是相同的"
2.前缀/后缀相等
前缀:string.hasprefix(“")
后缀:string.hassuffix(“")
let romeoAndJuliet = ["Act 1 Scene 1:Verona","A public place","Act 1 Scene 2: Capulet's mansion","Act 2 Scene 6: Friar Lawrence's cell"]
var act1SceneCount = 0
for scene in romeoAndJuliet {
if scene.hasPrefix("Act 1 ") { ++act1SceneCount }
}
var cell = 0
for scenne1 in romeoAndJuliet{
if scenne1.hasSuffix("cell")
{ cell++}
}
print("There are \(act1SceneCount) scenes in Act 1")
for scene in romeoAndJuliet {
if scene.hasPrefix("Act 1 ") { ++act1SceneCount }
}
var cell = 0
for scenne1 in romeoAndJuliet{
if scenne1.hasSuffix("cell")
{ cell++}
}
print("There are \(act1SceneCount) scenes in Act 1")
print("There are \(cell) scenes in cell")
大小写字符串
大写:string.uppercaseString
<!--?xml version="1.0" encoding="UTF-8" standalone="no"?-->
小写:string.lowercaseString
<!--EndFragment-->
相关推荐
Swift 繁简对照字符串函数
Swift视频教程:字符和字符串,字符串Unicode展现
OC的字符串匹配库.包含KMP匹配 ,AC 多模字符串匹配.
Swift学习笔记含项目代码.zipSwift学习笔记含项目代码.zipSwift学习笔记含项目代码.zipSwift学习笔记含项目代码.zipSwift学习笔记含项目代码.zipSwift学习笔记含项目代码.zipSwift学习笔记含项目代码.zipSwift学习...
Swift-model(字符串数组模型)
Swift-model(字符串字典数组模型)
Colors:打印彩色字符串,可以修改 Swift 中终端输出的字符串颜色,有趣的小工具。
Swift从入门到精通视频教程下载第6章 Swift集合类型——数组和字典.zip
Stringfication:让所有对象变成字符串
精选Swift相关的学习笔记与资料集合打包上传给大家,这里的笔记非常的容易看得懂,基本上学习编程的看这一堆东西就能很快上上手了,非常的实用。
UIColor-Hex-Swift - 使用RGBA hex字符串创建自动释放颜色的便利方法
Swift中简单快速的模糊字符串匹配,可用于实现类似Sublime的文本搜索
swift 学习笔记 之 扩展
PhotoStackView——iOS照片叠放视图
Swift 的 String 类型是值类型 。 如果您创建了一个新的字符串,那么当其进行常量、变量赋值操作或在函数/方法中传递时,会进行值拷贝。 任何情况下,都会对已有字符串值创建新副本,并对该新副本进行传递或赋值操作...
SwiftLint——Swift代码风格检查及自动格式化工具
字符串分数计算解析器,与'eval()'相同
Guitar:Swift编写的跨平台字符串库
swift 学习笔记 之 函数 编程题