На какие типы свертывания дел ссылается U_FOLD_CASE_DEFAULT?

Я реализую сворачивание дела в функции для JavaScript. Я сгенерировал код из файла CaseFolding.txt необходимый код JavaScript.

Документация для U_FOLD_CASE_DEFAULT говорит, что ICU будет использовать:

сопоставления по умолчанию, определенные в CaseFolding.txt.

Я хотел бы подтвердить, что используя типы C а также F опция по умолчанию. я знаю T исключено согласно документации.

A. Чтобы сделать простое сворачивание дела, используйте сопоставления со статусом C + S.

B. Чтобы сделать полное свертывание дела, используйте сопоставления со статусом C + F.

Отображения со статусом T могут использоваться или опускаться в зависимости от желаемого поведения сворачивания регистра. (По умолчанию опция исключает их.)

Я выбираю правильные значения из CaseFolding.txt?

2 ответа

Это зависит от того, есть ли доступ к буферу: U_FOLD_CASE_DEFAULT относится к C + S отображения при использовании символьных функций в uchar.h (лайк u_foldCase()) и C + F отображения при использовании строковых функций в ustring.h (лайк u_strFoldCase()).

В общем, вы должны предпочесть использовать C + F отображения, когда это возможно (например, вам не нужно отображение 1:1).

Да, это по умолчанию. В соответствии с разделом 3.13 ( PDF) текущего стандарта Unicode (8.0.0) стандартное сворачивание регистра:

... Использует сопоставления со значением поля состояния "C" или "F" в файле данных CaseFolding.txt в базе данных символов Unicode.

Другие вопросы по тегам