码迷,mamicode.com
首页 > 编程语言 > 详细

swift-字符串

时间:2015-06-19 06:36:03      阅读:115      评论:0      收藏:0      [点我收藏+]

标签:

//
//  main.swift
//  swift3
//
//  Created by tqh on 15/6/19.
//  Copyright (c) 2015年 tqh. All rights reserved.
//

import Foundation

println("Hello, World!")


/**
*  (一)字符串字面量
*/
let someString = "Some string literal value"


/**
*   字符串字面辆包含一下特殊字符
1.转义特殊字符 \0 (空字符)、\\(反斜线)、\t (水平制表符)、\n (换行符)、\r (回车符)、\" (双 引号)、\‘ (单引号)。
2.单字节 Unicode 标量,写成 \xnn,其中 nn 为两位十六进制数。
3.双字节 Unicode 标量,写成 \unnnn,其中 nnnn 为四位十六进制数。
4.四字节 Unicode 标量,写成 \Unnnnnnnn,其中 nnnnnnnn 为八位十六进制数。
*/

/**
*(二)初始化空字符串
*/

var emptyString = ""
var anotherEmptyString = String()
//判断是否为空
if emptyString.isEmpty {
    println("not found");
}
/**
*(三)字符串可变性
*/
//let 不可变 var 可变
var variableString = "Hors e"
variableString += " a nd ca rriag e"
/**
*(四)字符串是值类型
*/

/**
*  (五)使用字符(Characters)
*/

for Character in "haha?" {
    println(Character);//打印出每个字符
}
//通过标明一个 Character 类型注解并通过字符字面量进行赋值,可以建立一个独立的字符常量或变量:
let yenSign: Character = "¥"

/**
*  (六)计算字符数量 count(unusualMenagerie)
*/

let unusualMenagerie = "haha你是蛇~以呀嘿。。。"
println("unusualMenagerie有 \(count(unusualMenagerie)) 个字符")

/**
*  (七)连接字符串可字符
*/

//符串和字符的值可以通过加法运算符 (+) 相加在一起并创建一个新的字符串值:
//您也可以通过加法赋值运算符 (+=) 将一个字符串或者字符添加到一个已经存在字 符串变量上:
var instruction = "love"
instruction += unusualMenagerie;
println(instruction)

/**
*  (八)字符串插值 (和书上不一样不能*)
*/
let mutiplier = 3
let message = "\(mutiplier) times 2.5 is\(Double(mutiplier))"
println(message)

/**
*  (九)比较字符串
*/
//1.完全相等
let quotation = "We‘re a lot alike, you and I."
let sameQuotation = "We‘re a lot alike, you and I."
if quotation == sameQuotation {
println("These two strings are considered equal")
}

//2.hasPrefix/hasSuffix 判断前后缀是否有相同的
 let romeoAndJuliet = [
"Act 1 Scene 1: Verona, A public place",
 "Act 1 Scene 2: Capulet‘s mansion",
"Act 1 Scene 3: A room in Capulet‘s mansion",
 "Act 1 Scene 4: A street outside Capulet‘s mansion",
 "Act 1 Scene 5: The Great Hall in Capulet‘s mansion",
 "Act 2 Scene 1: Outside Capulet‘s mansion",
 "Act 2 Scene 2: Capulet‘s orchard",
"Act 2 Scene 3: Outside Friar Lawrence‘s cell",
 "Act 2 Scene 4: A street in Verona",
 "Act 2 Scene 5: Capulet‘s mansion",
 "Act 2 Scene 6: Friar Lawrence‘s cell"
]

var cout9 = 0
var count9_1 = 0;
for scene in romeoAndJuliet {
    if scene.hasPrefix("Act 1 ") {
     ++cout9
    }
    
    if scene.hasSuffix("cell") {
    ++count9_1;
    }
}

println("\(cout9) \(count9_1)")

/**
*  (十)大写和小写字符串
*/

// uppercaseString(大写) 和 lowercaseString(小写)

/**
* (十一) Unicode
1.UTF-8 代码单元集合 (利用字符串的 utf8 属性进行访问)
2.UTF-16 代码单元集合 (利用字符串的 utf16 属性进行访问)
3.21 位的 Unicode 标量值集合 (利用字符串的 unicodeScalars 属性进行访问)
*/
let dogString = " Dog! ????"

for codeUnit in dogString.utf8 {
    println(codeUnit)
}

for codeUnit in dogString.utf16 {
    println(codeUnit)
}

/**
*  (十二)Unicode 标量 (UnicodeScalars)
*/
//每一个 UnicodeScalar 拥有一个值属性,可以返回对应的21位数值,用 UInt32值来表示。
for codeUnit in dogString.unicodeScalars {
    println(codeUnit.value)
}
//遍历字符
for codeUnit in dogString.unicodeScalars {
    println(codeUnit)
}

swift-字符串

标签:

原文地址:http://www.cnblogs.com/hxwj/p/4587489.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!