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

Указывает, что строка Юникода нормализуется с помощью полной канонической декомпозиции, за которой следует замена последовательностей их основными составными, если это возможно.

FormD 2

Указывает, что строка Юникода нормализуется с помощью полной канонической декомпозиции.

FormKC 5

Указывает, что строка Юникода нормализована с помощью полной декомпозиции совместимости, за которой следует замена последовательностей их основными составными, если это возможно.

FormKD 6

Указывает, что строка Юникода нормализуется с помощью полной декомпозиции совместимости.

Комментарии

Некоторые последовательности Юникода считаются эквивалентными, так как они представляют один и тот же символ. Например, следующие варианты считаются эквивалентными, так как любое из них можно использовать для представления "ắ":

  • "\u1EAF" (U+1EAF LATIN SMALL БУКВА С БРИВОМ И ОСТРОЙ)

  • "\u0103\u0301" (U+0103 ЛАТИНСКАЯ БУКВА A С BREVE + U+0301 ОБЪЕДИНЕНИЕ ОСТРЫХ АКЦЕНТОВ)

  • "\u0061\u0306\u0301" (U+0061 LATIN SMALL LETTER A + U+0306 ОБЪЕДИНЕНИЕ BREVE + U+0301 ОБЪЕДИНЕНИЕ ОСТРОГО АКЦЕНТА)

Однако порядковый номер, то есть двоичные, сравнения считают эти последовательности разными, так как они содержат разные значения кода Юникода. Перед выполнением порядковых сравнений приложения должны нормализовать эти строки, чтобы разложить их на основные компоненты.

Каждый составной символ Юникод сопоставляется с более базовой последовательностью одного или нескольких символов. Процесс декомпозиции заменяет составные символы в строке более простыми сопоставлениями. Полная декомпозиция рекурсивно выполняет эту замену, пока ни один из символов в строке не может быть разложен дальше.

Юникод определяет два типа декомпозиций: совместимость декомпозиции и канонического декомпозиции. При декомпозиции совместимости сведения о форматировании могут быть потеряны. В каноническом декомпозиции, которая представляет собой подмножество декомпозиции совместимости, сохраняется информация о форматировании.

Два набора символов считаются каноническими эквивалентными, если их полные канонические декомпозиции идентичны. Аналогичным образом, два набора символов считаются эквивалентными совместимости, если их полная декомпозиция совместимости идентичны.

Дополнительные сведения о нормализации, декомпозиции и эквивалентности см. в приложении Юникода "Стандартный" #15: Формы нормализации Юникода в unicode.org.

Применяется к

См. также раздел