Во-первых, к вашей проблеме: локаль сложна в Xcode, особенно в игровых площадках. Если ваша игровая площадка нацелена на iOS, то она основана на локали симулятора. Если он нацелен на macOS, я нахожу это немного странным, потому что Xcode переопределяет вещи. Обратите внимание, что для изменения локали обычно требуется перезагрузка, чтобы полностью вступить в силу (симулятор или Ma c), но я все еще нахожу, что игровые площадки ненадежны, потому что Xcode не локализован должным образом (или я предполагаю, что локализован вообще .... ) Если вы еще не перезагрузились, могут возникнуть несоответствия. Если вы играете на игровой площадке, все ставки отключены, даже если вы перезагрузитесь. Я рекомендую создавать инструменты командной строки Ma c. Они гораздо надежнее.
Если вы собираетесь использовать игровые площадки, работайте с указанным c языковым стандартом, который вы инициализируете, а не current
.
На вопрос, что это Это означает, что буквы обычно считаются «отсортированными». Это отличается между языками, между культурами, которые разделяют язык, и даже между использованиями в одной культуре. Несколько примеров из ICU (их гораздо больше):
Буквы AZ могут быть отсортированы в другом порядке, чем в Engli sh. Например, на литовском языке «y» сортируется между «i» и «k».
Комбинации букв могут рассматриваться как одна буква. Например, в традиционном испанском sh "ch" рассматривается как одна буква и сортируется между "c" и "d".
Буквы с ударением можно рассматривать как второстепенные варианты безударного письма. Например, «é» можно рассматривать как эквивалент «e».
Буквы с ударением можно рассматривать как отдельные буквы. Например, «Å» в датском языке sh рассматривается как отдельная буква, которая сортируется сразу после буквы «Z».
Буквы без акцента, которые считаются различными на одном языке, могут быть нечеткими в еще один. Например, буквы «v» и «w» - это две разные буквы в соответствии с Engli sh. Однако «v» и «w» традиционно считаются вариантами одной и той же буквы в Swedi sh.
. collatorIdentifier
- это полный идентификатор, а collationIdentifier
является спецификацией использования c шт.
let l = Locale(identifier: "de@collation=phonebook")
l.collatorIdentifier // "de@collation=phonebook"
l.collationIdentifier // "phonebook"