Розпізнавання, нормалізація та форматування чисел і календарних значень.
Призначення
Задає окремі правила для полів, що містять числа або дати. Може очистити текстові позначення, виділити число/дату серед іншого тексту, перетворити на придатне для обчислень значення або оформити як текст для звіту.
Входи та виходи
Один in та out. Числові правила змінюють вибрані поля; правила дати можуть створювати колонки частин дати й вилучати початкову.
Параметри
| Параметр | Налаштування та значення | Варіанти й межі |
|---|
rules | Упорядкований перелік правил. Умови та параметри правила наведено нижче. | Кількість: 0–256 |
Спільні налаштування правила
| Параметр | Що налаштовує |
|---|
field | Поле або порожнє значення для «Усі інші поля». |
replacements | Попередні заміни find → replace, whole для всього значення та case_sensitive для регістру; до 100 замін. |
extract | Шукати число або дату серед інших слів/символів. |
invalid | Залишити keep, очистити null або зупинити error. |
Налаштування чисел
| Параметр | Що налаштовує |
|---|
decimal_in / thousands_in | Вхідні десятковий та тисячний роздільники; auto або явний вибір. |
parentheses_negative | Число в дужках вважати від’ємним. |
percent | keep зберігає знайдену величину; fraction переводить відсоток у частку. |
divisor | Поділити на 1, 1000 або 1000000 для одиниць, тисяч чи мільйонів. |
digits / rounding | 0–15 десяткових знаків або без заданої точності. Режими half_up/half_even/half_down/down/up/floor/ceiling. |
sign | Зберегти знак, зробити додатним або від’ємним. |
output | number для обчислень; text для оформленого тексту. |
decimal / thousands / prefix / suffix | Вигляд текстового результату: роздільники, префікс і суфікс. |
Налаштування дат
| Параметр | Що налаштовує |
|---|
order | auto, dmy, mdy або ymd для порядку складових вхідної дати. |
output / time | Результат date, text або parts; за потреби зберегти час. |
pattern / language | Шаблон текстової дати, типово DD.MM.YYYY; мова назв uk/ru/en. |
parts | Частини: year, quarter, month, month_name, week, day, weekday; для кожної задайте назву нового поля. |
parts_output | Числове або текстове подання частин. |
original | При виділенні частин залишити початкове поле keep, нормалізувати до дати date або вилучити remove. |
Покрокове налаштування
- Додайте правило для конкретного поля або «Усі інші поля».
- Виберіть number або date. Додайте попередні текстові заміни й визначте, чи шукати значення всередині тексту.
- Налаштуйте розпізнавання: роздільники числа або порядок частин дати.
- Виберіть результат: число/дата для подальших дій або текст для звіту. Задайте поведінку некоректних значень.
- Перевірте рядки з локальними форматами, дужками, відсотками та неоднозначними датами.
Правила та діагностика
- Правило з порожнім field стосується інших полів, не названих окремими правилами.
- invalid=keep зберігає нерозпізнане значення, null очищає, error зупиняє. Для контрольованого завантаження вибирайте політику свідомо.
- Вихід text призначений для подання; перед арифметикою залишайте output=number або повторно нормалізуйте.
- Відсотки можна зберігати як число з тексту або переводити у частку: 15% → 0,15 за percent=fraction.
- Частини дати повинні мати унікальні назви, що не конфліктують з результатом.
- Для output=parts потрібно вибрати одне конкретне поле дати та хоча б одну частину; правило «Усі інші поля» не створює колонки частин дати.
- Вхідні десятковий і тисячний роздільники мають відрізнятися; ця сама вимога діє для текстового результату.
Приклад налаштування
Для Amount задайте kind=number, decimal_in=",", thousands_in=" ", extract=true, output=number, invalid=error. Текст «1 234,56 грн» стане числом 1234,56. Для DateText виберіть kind=date, order=dmy, output=parts і створіть Year та Month.