Форматы чисел и отображение результатов
Четыре региональных пресета, поведение при вставке, режимы отображения результатов и грамматика пользовательских шаблонов.
Numlex форматирует и то, что вы вводите, и то, что он отвечает, чтобы числа читались привычно для вашего региона. Эта страница описывает вкладку настроек Numbers (Settings → Numbers): четыре региональных пресета, их влияние на ввод, группировку и вызовы функций, а также все режимы отображения результатов — включая грамматику пользовательских шаблонов.
Региональные пресеты
| Формат | Пример | Десятичный | Группировка | Разделитель аргументов функций |
|---|---|---|---|---|
| System | платформа | locale | locale | ;, если системный десятичный разделитель — запятая, иначе , |
| North America | 1,234.56 | . | , | , |
| Western Europe | 1.234,56 | , | . | ; (max(1,5; 2,5)) |
| Eastern Europe | 1 234,56 | , | NBSP (пробел принимается при вводе) | ; |
Чем различаются форматы
- Вставка: при включённой конвертации при вставке слипшиеся группы (
1.234,56) нормализуются к активному формату; без неё ввод остаётся точно таким, как вставлен. - Группировка при вводе:
1,234вне вызовов функций — это число 1234 (запятая-группа). Десятичная запятая как десятичный разделитель существует только в конфигурации Western/Eastern Europe. - Внутри вызовов функций: точечные форматы (North America, System с точкой)
используют
,как разделитель аргументов (max(1.5, 2.5)); запятые форматы (Western/Eastern Europe, System с запятой) используют;(max(1,5; 2,5)). Десятичная запятая как десятичный разделитель аргумента существует только в запятых форматах. - Компактное отображение (
1.5M) — отдельная настройка, не зависящая от регионального формата. - Язык интерфейса не управляет числовой локалью.
Режимы отображения результатов
Настройка Result display применяется глобально и может быть переопределена для отдельного ответа. Режимы:
| Режим | Значение |
|---|---|
| Automatic | авто: обычный/компактный вид плюс научный запас при |v| ≥ 1e16 (сам в инженерную запись не переключается) |
| Decimal | обычная десятичная запись с указанным числом знаков |
| Scientific | научная запись (1.5e6) |
| Engineering | научная запись со степенями, кратными 3 (1.5e6) |
| Fraction | рациональная дробь (1/2) |
| Timespan | разложение длительности только для величин размерности времени (5 min 30 s); всё остальное падает в Automatic |
| Custom | пользовательский шаблон (см. ниже) |
Дополнительные настройки охватывают положение знака минус и символа валюты (префикс/суффикс, слева/справа). Они применяются только к отображению.
Переопределение для отдельного ответа
Настройка Result display глобальна; каждый ответ может переопределить её локально. Щёлкните числовой ответ правой кнопкой (или с Control):
| Пункт меню | Эффект |
|---|---|
| Round — ползунок 0…10 dp | Повторно округляет только этот ответ, независимо от глобального округления 2…10. Строка-источник не трогается. |
| Number Format | Локальная запись для этого ответа, с Default для снятия. Доступно для числовых ответов. |
| Reset Formatting to Defaults | Появляется только когда у ответа уже есть переопределение; снимает его. |
Переопределение сохраняется вместе с листом. Оно меняет только отрисовку этого ответа: значение, любой токен, ссылающийся на строку (токены отображаются по своему или глобальному формату), зависимости и суммы не затрагиваются. Полное меню описано в настройках и внешнем виде.
Пользовательские шаблоны
Пользовательские шаблоны используют фиксированный ASCII-скелет, нейтральный к локали, —
вывод локализуется контекстом. Шаблон содержит до трёх секций, разделённых ;:
positive;negative;zero.
Грамматика для каждой секции:
- литерал в апострофах
'...';''— экранирование апострофа; - один числовой скелет: обязательные цифры
0, необязательные#; одна точка.(в целой части0может идти после#; в дробной —0может идти перед); - группировка
,только в целой части: правый сегмент — основная группа, один повторённый сегмент слева — вторая (индийский стиль#,##,##0). Всё остальное отклоняется; - один скалер:
%(×100) или‰(×1000); - один плейсхолдер валюты
¤— его позиция задаёт место символа; - необязательная экспонента:
E0,E+0,E00,E+00,E-00(один или два плейсхолдера экспоненты) и только после цифр мантиссы. Голый скелетE00(без цифры передE) невалиден.
Пределы: 96 Unicode-скаляров на шаблон, 12 дробных плейсхолдеров и не более 256 символов вывода. Шаблон, не прошедший валидацию, всё равно сохраняется и редактируется, но никогда не доходит до рендера: отображение откатывается к Automatic.
#,##0.00 → 1,234,567.89 (value 1234567.8912)
0.00' €' → 45.68 € (value 45.678; literals live only in apostrophes)
'≈ '0.### → ≈ 45.678
#,##0.00' €' → 1,234,567.89 € (grouping + literal)
#,##,##0 → 12,34,568 (Indian style)
#E0 → 1e6 (value 1000000; a digit before E is required)
0.00%;;0 → 12.34% (positive;negative;zero; value 0.1234)
Невалидные шаблоны — никогда не рендерятся, ответ откатывается к Automatic:
1.2.3 (две точки), #E0E0 (две экспоненты), 0.0%‰ (два скалера), E00
(нет цифры перед E), E±00 (то же), 1,000,0 (некорректная группировка), # ##0
(пробелы не входят в скелет), 0.00 "€" (двойные кавычки — только апострофы),
0.### 'EUR' (пробел перед литералом).
Связанные разделы
- Числа и системы счисления — литералы, на которые влияет этот формат.
- Встроенные функции — разделители аргументов в вызовах.
- Токены ответов — почему локальные переопределения не переносятся вместе с токенами.