结构
Unicode
Unicode.CanonicalCombiningClass
Unicode 标准定义的规范排序算法中使用的标量分类。
声明
struct CanonicalCombiningClass
概述
排序算法使用规范组合类来确定两个组合标记序列是否应被视为规范等效(即解释相同)。如果两个序列在按组合类以升序对标量进行排序时相等,则它们是规范等价的。
例如,考虑序列"\u{0041}\u{0301}\u{0316}"
(拉丁文大写字母 A,组合重音,下面组合重音)。这些标量的组合类分别具有数值 0、230 和 220。通过它们的组合类对这些标量进行排序产生 "\u{0041}\u{0316}\u{0301}"
,因此仅通过这些标量的顺序不同的两个字符串将比较为相等:
let aboveBeforeBelow = "\u{0041}\u{0301}\u{0316}"
let belowBeforeAbove = "\u{0041}\u{0316}\u{0301}"
print(aboveBeforeBelow == belowBeforeAbove)
// Prints "true"
命名和未命名的组合类
规范组合类在 Unicode 标准中定义为 0...254
范围内的整数。为方便起见,该标准将符号名称分配给这些组合类的子集。
CanonicalCombiningClass
类型符合 RawRepresentable
类型的原始值 UInt8
。您可以使用以符号名称命名的静态成员或使用 init(rawValue:)
初始化程序来创建该类型的实例。
let overlayClass = Unicode.CanonicalCombiningClass(rawValue: 1)
let overlayClassIsOverlay = overlayClass == .overlay
// overlayClassIsOverlay == true
可用版本
iOS 8.0+, iPadOS 8.0+, macOS 10.10+, Mac Catalyst 13.0+, tvOS 9.0+, watchOS 2.0+
相关用法
- Swift Unicode.CanonicalCombiningClass ...(_:_:)用法及代码示例
- Swift Unicode.CanonicalCombiningClass ..<(_:)用法及代码示例
- Swift Unicode.CanonicalCombiningClass ..<(_:_:)用法及代码示例
- Swift Unicode.CanonicalCombiningClass ...(_:)用法及代码示例
- Swift Unicode.Scalar.UTF16View contains(where:)用法及代码示例
- Swift Unicode.Scalar.UTF8View dropFirst(_:)用法及代码示例
- Swift Unicode.Scalar.UTF16View firstIndex(of:)用法及代码示例
- Swift Unicode.Scalar.UTF16View randomElement()用法及代码示例
- Swift Unicode.Scalar.UTF8View contains(where:)用法及代码示例
- Swift Unicode.UTF32 encode(_:into:)用法及代码示例
- Swift Unicode.Scalar.UTF16View forEach(_:)用法及代码示例
- Swift Unicode.Scalar.UTF8View index(_:offsetBy:limitedBy:)用法及代码示例
- Swift Unicode.Scalar.UTF16View allSatisfy(_:)用法及代码示例
- Swift Unicode.Scalar.UTF8View elementsEqual(_:)用法及代码示例
- Swift Unicode.Scalar.UTF16View prefix(through:)用法及代码示例
- Swift Unicode.Scalar.UTF8View split(maxSplits:omittingEmptySubsequences:whereSeparator:)用法及代码示例
- Swift Unicode.Scalar escaped(asASCII:)用法及代码示例
- Swift Unicode.Scalar.UTF16View contains(_:)用法及代码示例
- Swift Unicode.Scalar.UTF16View filter(_:)用法及代码示例
- Swift Unicode.Scalar.UTF16View split(separator:maxSplits:omittingEmptySubsequences:)用法及代码示例
- Swift Unicode.Scalar.UTF16View enumerated()用法及代码示例
- Swift Unicode.Scalar.UTF16View reduce(into:_:)用法及代码示例
- Swift Unicode.Scalar.UTF8View allSatisfy(_:)用法及代码示例
- Swift Unicode.UTF16 transcodedLength(of:decodedAs:repairingIllFormedSequences:)用法及代码示例
- Swift Unicode.UTF16 trailSurrogate(_:)用法及代码示例
注:本文由纯净天空筛选整理自apple.com大神的英文原创作品 Unicode.CanonicalCombiningClass。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。