NormalizationForm 枚举

定义

定义要执行的规范化的类型。

public enum class NormalizationForm
public enum NormalizationForm
[System.Runtime.InteropServices.ComVisible(true)]
public enum NormalizationForm
type NormalizationForm = 
[<System.Runtime.InteropServices.ComVisible(true)>]
type NormalizationForm = 
Public Enum NormalizationForm
继承
NormalizationForm
属性

字段

名称 说明
FormC 1

指示 Unicode 字符串使用完全标准分解进行规范化,然后将序列替换为其主复合(如果可能)。

FormD 2

指示 Unicode 字符串使用完全标准分解进行规范化。

FormKC 5

指示 Unicode 字符串使用完全兼容分解进行规范化,然后将序列替换为其主复合(如果可能)。

FormKD 6

指示 Unicode 字符串使用完全兼容分解进行规范化。

注解

某些 Unicode 序列被视为等效序列,因为它们表示相同的字符。 例如,以下内容被视为等效项,因为其中任何一个都可用于表示“ắ”:

  • “\u1EAF” (U+1EAF 拉丁文小写字母 A,带有短音和锐)

  • “\u0103\u0301” (U+0103 拉丁文小写字母 A 与 BREVE + U+0301 组合锐音符)

  • “\u0061\u0306\u0301” (U+0061 拉丁文小写字母 A + U+0306 组合 BREVE + U+0301 组合锐音符)

但是,序号(即二进制)比较认为这些序列不同,因为它们包含不同的 Unicode 代码值。 在执行序号比较之前,应用程序必须规范化这些字符串,以便将其分解为其基本组件。

每个复合 Unicode 字符映射到一个或多个字符的更基本序列。 分解过程将字符串中的复合字符替换为其更基本的映射。 完全分解以递归方式执行此替换,直到字符串中的字符无法进一步分解。

Unicode 定义了两种类型的分解:兼容性分解和规范分解。 在兼容性分解中,格式设置信息可能会丢失。 在规范分解(兼容性分解的子集)中,将保留格式信息。

如果两组字符的完整规范分解相同,则认为两组字符具有规范等效性。 同样,如果两组字符完全兼容分解相同,则两组字符被视为具有兼容性等效性。

有关规范化、分解和等效性的详细信息,请参阅 unicode.org 中的 Unicode 标准附件 #15:Unicode 规范化形式

适用于

另请参阅