NormalizationForm 列挙型
定義
重要
一部の情報は、リリース前に大きく変更される可能性があるプレリリースされた製品に関するものです。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。
実行する正規化の種類を定義します。
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
- 継承
- 属性
フィールド
FormC | 1 | 完全標準分解を使用して Unicode 文字列を正規化した後、可能な場合は、シーケンスを主要な複合文字で置換することを示します。 |
FormD | 2 | 完全標準分解を使用して Unicode 文字列を正規化したことを示します。 |
FormKC | 5 | 完全互換性分解を使用して Unicode 文字列を正規化した後、可能な場合は、シーケンスを主要な複合文字で置換することを示します。 |
FormKD | 6 | 完全互換性分解を使用して Unicode 文字列を正規化したことを示します。 |
注釈
一部の Unicode シーケンスは、同じ文字を表しているため、同等と見なされます。 たとえば、"ắ" を表すためにこれらのいずれかを使用できるため、次は同等と見なされます。
"\u1EAF" (U+1EAF ラテン小文字 A と BREVE AND ACUTE)
"\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 Standard Annex #15: Unicode Normalization Forms at unicode.org」を参照してください。
適用対象
こちらもご覧ください
.NET