var str = "" // 定义一个空字符串
var str1 = String()
print(str.isEmpty) // 判断字符串是否为空串
str = "hello, "
str1 = "world"
str = str + str1 // 字符串拼接
// 可以使用🐶作为变量名,打印输出的时候会当做一个character
var 🐶 = "我家的🐶"
for char in 🐶.characters{
print(char)
}
var char:Character = "H"
// 定义字符数组(两种方式)
var characters:[Character] = ["H", "e", "l", "l", "o"]
var arr:Array<Character> = ["w", "o", "r", "l", "d"]
str = String(characters)
str = String(arr)
// unicode字符处理
var unicode = "\u{25}"
unicode = "\u{2654}"
unicode = "\u{1F496}\u{2658}"
// 字符数
str.characters.count
// 字符串长度
str.lengthOfBytesUsingEncoding(NSUTF8StringEncoding)
// 字符串数组操作
// predecessor得到前一个
// successor得到后一个
// advancedBy从某个位置(开始)开始数第三个
str[str.startIndex]
str[str.startIndex.advancedBy(3)]
str[str.startIndex.successor()]
str[str.endIndex.predecessor()]
// 得到字符串中所有的字符的Range,然后循环
for index in str.characters.indices{
print("\(str[index])")
}
// 插入字符
str.insert("!", atIndex: str.endIndex)
// 插入字符集合(字符串)
str.insertContentsOf("????".characters, at: str.endIndex)
// 删除单个字符
str.removeAtIndex(str.endIndex.predecessor())
print(str)
// 删除范围多个字符
var range = str.startIndex.advancedBy(3)..<str.endIndex
str[range]
str.removeRange(range)
print(str)
// 判断字符串是否以什么开始
str.hasPrefix("wo")
// 判断字符串是否以什么结尾
str.hasSuffix("or")
// 判断两个字符串是否相等
str == "wor"
//去除字符串首位多余的字符
//运行结果 hello
let s6 = "----------hello---------";
s6.stringByTrimmingCharactersInSet(NSCharacterSet(charactersInString: "-"))
// 字符的UTF8编码
let dogStr = "dog‼狗🐶" // dog一个英文算一个UTF8编码,一个中文3个,🐶是4个
for codeUnit in dogStr.utf8{
print(codeUnit)
}
// 字符的UTF16编码 // dog一个英文算一个UTF16编码,一个中文1个,🐶是2个
for codeUnit in dogStr.utf16{
print(codeUnit)
}
// 字符的Scalars编码 // 都只算一个
for scalars in dogStr.unicodeScalars{
print(scalars)
}
网友评论