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 文字は、1 つ以上の文字のより基本的なシーケンスにマップされます。 分解のプロセスでは、文字列内の複合文字をより基本的なマッピングに置き換えます。 完全分解では、文字列内の文字をこれ以上分解できないまで、この置換が再帰的に実行されます。

Unicode では、互換性分解と正規分解の 2 種類の分解が定義されています。 互換性分解では、書式設定情報が失われる可能性があります。 互換性分解のサブセットである正規分解では、書式設定情報が保持されます。

完全な正規分解が同一である場合、2 つの文字セットは正規の等価性を持つと見なされます。 同様に、完全な互換性分解が同一の場合、2 つの文字セットは互換性の等価性を持つと見なされます。

正規化、分解、等価性の詳細については、「 Unicode 標準付属文書 #15: unicode.org の Unicode 正規化フォーム 」を参照してください。

適用対象

こちらもご覧ください