swift 中String常用操作

时间:2021-12-22 22:30:12
swift 中String常用操作

1.  字符串定义

var s = "aaaaaa"

// 两个字符串均为空并等价。
var emptyString = ""  
var anotherEmptyString = String()

字符串字面量可以包含以下特殊字符:转义字符  \0 (空字符)、  \\ (反斜线)、  \t (水平制表符)、  \n (换行符)、 \r (回车符)、  \" (双引号)、  \' (单引号)。

    • 单字节 Unicode 标量,写成  \xnn ,其中  nn 为两位十六进制数。

    • 双字节 Unicode 标量,写成  \unnnn ,其中  nnnn 为四位十六进制数。

    • 四字节 Unicode 标量,写成  \Unnnnnnnn ,其中  nnnnnnnn 为八位十六进制数。

2.  字符串拼接

//字符串拼接
var x = "x"
var y = "y"
var z = x + y
var m = z + "m"
var n = "n"n += m//使用\()完成字符串的插值
var result = "\(x)==\(y)==\(z)==\(m)==\(n)"
println(result)
let plus1 = s1 + c1

3.  字符串遍历

var myString = "This is a string"
for character in myString
{
   println(character)
}

4.  字符个数统计

var myString = "Here is my string, lets count the characters!"
println(count(myString))

5.  字符串比较 & 是否包含前后缀

var check1:String = "Swift is good!"
var check2:String = "Swift is good!"
//字符串是否相等
if check1 == check2 

 println("check1 = check2")

else 
{  println("check1 != check2")
}
//是否包含前缀
var preCheck = "Swift"if check1.hasPrefix(preCheck) {  println("包含前缀")}
//是否包含后缀
var sufCheck = "good!"
if check1.hasSuffix(sufCheck) 
{  
println("包含后缀")
}

6.  大小写转换

let myString = "Wait a moment, please."
let newString = myString.uppercaseString
let myString = "Wait a moment, please."
let newString = myString.lowercaseString

7.  字符串是否包含其他字符串

var myString = "This is a string test"
if myString.rangeOfString("test") 
{
    println("exists")
}

8.  字符串截取

//截取字符串的标识位从1开始计数
let myString = "ABCDEFGHI"
//1.从目标标识位后一个字符开始截取余下的字符串
let mySubstring = (myString.substringFromIndex(2))
println(mySubstring)     let mySubstring2 = (myString.substringToIndex(4))
println(mySubstring2)

9.  字符串去空格

var myString = "    Let's trim the whitespace    " 
var newString = myString.stringByTrimmingCharactersInSet(NSCharacterSet.whitespaceCharacterSet())

10.  字符串分割为字符串数组

//单一分隔符:只有一种分割符
var myString = "Berlin, Paris, New York, San Francisco"
//1.隐式定义字符串数组
var myArray = myString.componentsSeparatedByString(",")
//2.显示定义字符串数组
var myArray2 : String[] = myString.componentsSeparatedByString(", ")
for em in myArray2 {  
print(em)   
}
//多重分割符:有2个或两个以上分隔符
var myString2 = "One-Two-Three-1 2 3"
var array2:String[] = myString2.componentsSeparatedByCharactersInSet(NSCharacterSet (charactersInString: "- "))
//["One", "Two", "Three", "1", "2", "3"]

11.字符串转换为NSData

let myString = "String to encode"
let string: NSString = myString
let data = string.dataUsingEncoding(NSUTF8StringEncoding)