Character
聲明
@frozen struct Character
概述
Character
類型表示由一個或多個 Unicode 標量值組成的字符,按 Unicode 邊界算法分組。通常,Character
實例匹配字符串的讀者將感知為單個字符的內容。字符串是Character
實例的集合,因此可見字符的數量通常是計算字符串長度的最自然方法。
let greeting = "Hello! 🐥"
print("Length: \(greeting.count)")
// Prints "Length: 8"
因為字符串中的每個字符都可以由一個或多個 Unicode 標量值組成,所以字符串中的字符數可能與 Unicode 標量值表示的長度或特定二進製表示中字符串的長度不匹配。
print("Unicode scalar value count: \(greeting.unicodeScalars.count)")
// Prints "Unicode scalar value count: 8"
print("UTF-8 representation count: \(greeting.utf8.count)")
// Prints "UTF-8 representation count: 11"
每個 Character
實例都由一個或多個 Unicode 標量值組成,這些值組合在一起作為 extended grapheme cluster
。這些標量值的分組方式由規範的、本地化的或以其他方式定製的 Unicode 分段算法定義。
例如,一個國家/地區的 Unicode 標誌字符由對應於該國家/地區的 ISO 3166-1 alpha-2 代碼的兩個區域指標標量值組成。美國的 alpha-2 代碼是 “US”,因此它的標誌字符由 Unicode 標量值 "\u{1F1FA}"
(地區指示符符號字母 U)和 "\u{1F1F8}"
(地區指示符符號字母 S)組成。當在字符串文字中彼此相鄰放置時,這兩個標量值將組合成單個字素簇,在 Swift 中由 Character
實例表示。
let usFlag: Character = "\u{1F1FA}\u{1F1F8}"
print(usFlag)
// Prints "🇺🇸"
有關此討論中使用的 Unicode 術語的更多信息,請參閱Unicode.org glossary。特別是,這個討論提到了 extended grapheme clusters 和 Unicode scalar values 。
可用版本
相關用法
- Swift Character lowercased()用法及代碼示例
- Swift Character init(extendedGraphemeClusterLiteral:)用法及代碼示例
- Swift Character init(_:)用法及代碼示例
- Swift Character ..<(_:)用法及代碼示例
- Swift Character asciiValue用法及代碼示例
- Swift Character description用法及代碼示例
- Swift Character wholeNumberValue用法及代碼示例
- Swift Character ...(_:_:)用法及代碼示例
- Swift Character ...(_:)用法及代碼示例
- Swift Character hexDigitValue用法及代碼示例
- Swift Character uppercased()用法及代碼示例
- Swift Character ..<(_:_:)用法及代碼示例
- Swift CollectionDifference firstIndex(of:)用法及代碼示例
- Swift Collection prefix(upTo:)用法及代碼示例
- Swift ContiguousArray forEach(_:)用法及代碼示例
- Swift CollectionOfOne contains(_:)用法及代碼示例
- Swift ClosedRange.Index ..<(_:)用法及代碼示例
- Swift Collection first用法及代碼示例
- Swift ContiguousArray insert(contentsOf:at:)用法及代碼示例
- Swift ClosedRange index(_:offsetBy:)用法及代碼示例
- Swift CollectionOfOne compactMap(_:)用法及代碼示例
- Swift CollectionDifference contains(where:)用法及代碼示例
- Swift CollectionOfOne last(where:)用法及代碼示例
- Swift Collection dropLast(_:)用法及代碼示例
- Swift ContiguousArray reserveCapacity(_:)用法及代碼示例
注:本文由純淨天空篩選整理自apple.com大神的英文原創作品 Character。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。