Перейти к содержимому
До 20 000 символов
Заполните форму — здесь появится результат.

Как считаем

Регистры для людей: UPPER, lower, Заголовок, Предложение

ВЕРХНИЙ регистр — стандартный text.toUpperCase(): каждая буква строчного алфавита переводится в свою заглавную пару. Работает для любых языков с двухрегистровым алфавитом — русского, английского, немецкого, греческого. Цифры, знаки препинания, пробелы остаются как есть. Полезно для машиночитаемой зоны паспорта, крупных заголовков в вёрстке, полей типа «ФАМИЛИЯ» в анкетах.

нижний регистр — обратная операция, text.toLowerCase(). Пригодится для унификации: например, email Ivan.Petrov@Yandex.Ru в стандартной форме — ivan.petrov@yandex.ru. Или чтобы привести к единому виду хэштеги и slug'и статей.

Заголовок — каждое слово начинается с заглавной, остальные буквы этого слова — строчные. Алгоритм: сначала весь текст в lower, потом капитализируется буква после начала строки или любого не-буквенно-цифрового символа (пробел, дефис, точка, подчёркивание). Отличается от String#title() в JS/Python: там ломаются апострофы (D'Artagnan → D'Artagnan), а тут работает корректно на всех языках, включая кириллицу.

Предложение — только первая буква каждого предложения заглавная, остальные остаются как в оригинале. Границей предложения считаются символы . ! ? … + пробел. Три точки подряд ... нормализуются в один символ многоточия … (U+2026) до применения правила — иначе «Привет... как дела?» дал бы три заглавные подряд. Не трогает регистр внутри предложения: если в тексте были аббревиатуры (ФИО, ГИБДД) или имена (iPhone), они сохранятся.

иНВЕРСИЯ регистра

Каждая буква меняется на пару противоположного регистра: заглавные становятся строчными, строчные — заглавными. Не-буквенные символы (цифры, пробелы, пунктуация) не трогаются. Классический пример: iPhone → IpHONE. Для русского: Привет → пРИВЕТ.

Реальное применение — визуальный маркер («вот здесь я забыл выключить Caps Lock» — не хочется перепечатывать). Правило: буква считается «строчной», если её toUpperCase() отличается от неё самой; «заглавной» — если toLowerCase() отличается. Для символов без регистра (цифры, знаки препинания) обе функции возвращают исходный символ — они пропускаются без изменений.

Программистские регистры: snake_case, kebab-case, CamelCase

Три технических формата для имён переменных, файлов и URL:

snake_case — слова через подчёркивание, всё в нижнем регистре. Стандарт Python, Rust, Ruby, PostgreSQL. Пример: hello world → hello_world. Разделителями считаются любые не-буквенно-цифровые символы (пробелы, дефисы, точки, знаки препинания) — они «съедаются» и заменяются на один _.

kebab-case — то же самое, но через дефис. Стандарт HTML/CSS-классов, URL-slug'ов, npm-пакетов. Пример: Hello World → hello-world. Тот же алгоритм разбиения — разделитель другой.

CamelCase — PascalCase-стиль: первая буква каждого слова заглавная, остальные буквы слова — строчные, разделители удалены. Стандарт названий классов в C#, Java, TypeScript. Пример: hello world → HelloWorld. Если нужен lowerCamelCase (первое слово с маленькой) — можно вручную заменить первую букву на строчную.

Все три работают с Unicode — русские слова тоже корректно преобразуются: Привет мир → привет_мир / привет-мир / ПриветМир. Идентификаторы с кириллицей поддерживаются в Python и некоторых редакторах кода, но не в JavaScript — там для переменных нужна латиница: для транслитерации кириллицы в латиницу перед конвертацией в snake_case используйте транслит.

Копирование и лимиты

Копирование в буфер: кликните по варианту (или нажмите Enter/пробел, если пришли с клавиатуры) — он скопируется в системный буфер обмена. Используется современный navigator.clipboard.writeText() с fallback на скрытый <textarea> + execCommand('copy') для старых браузеров и HTTP-соединений. После успешного копирования — короткая индикация «Скопировано» и лёгкая подсветка карточки.

Максимальная длина — 20 000 символов за один прогон. Этого хватает на статью, договор или список ФИО пассажиров. Если нужно преобразовать больше — обработайте частями. Пустой текст не выдаёт результата (форма ждёт ввода).

Частые вопросы

Как поменять регистр текста без переписывания вручную?

Вставьте текст в поле калькулятора и выберите нужный вариант — ВЕРХНИЙ, нижний, Заглавные Каждое Слово, Первая заглавная, иНВЕРСИЯ, snake_case, kebab-case или CamelCase. Всё считается в браузере без загрузки на сервер, поэтому длинные документы обрабатываются мгновенно и не покидают ваш компьютер. Если нужно оценить объём текста до конвертации, воспользуйтесь счётчиком символов.

В чём разница между Title Case и Sentence Case?

Title Case — каждое значимое слово с заглавной: «Как Написать Заголовок Статьи». Используется в английских заголовках, названиях книг, шапках таблиц. Sentence Case — заглавная только у первого слова и имён собственных: «Как написать заголовок статьи». Это норма русской типографики и современный стандарт англоязычных UI-текстов (Google, Apple с 2013 года). В русскоязычных заголовках всегда используйте Sentence Case — Title Case выглядит как калька с английского.

Как в Word сделать все буквы заглавными без потери форматирования?

В Word выделите текст и нажмите Shift+F3 — сочетание циклически переключает регистр: строчный → С заглавной → ВЕРХНИЙ. Форматирование (шрифт, размер, цвет, курсив) при этом сохраняется, меняются только буквы. Альтернатива — вкладка «Главная» → кнопка «Регистр» (Aa) с выпадающим меню на 5 вариантов. Онлайн-конвертер удобнее, когда текст берётся из PDF, письма или CMS без Word под рукой — результат копируется одной кнопкой.

Что такое CamelCase и snake_case — где они применяются?

CamelCase — слитная запись слов с заглавной у каждого: getUserName, MyProjectFile. Стандарт для имён переменных в Java, JavaScript, C#, Swift. snake_case — слова через нижнее подчёркивание, всё строчное: get_user_name. Норма Python (PEP 8), Ruby, Rust для переменных и функций. kebab-case — через дефис: get-user-name. Используется в CSS-классах, URL-адресах, HTML-атрибутах. Выбор кейса не косметика: линтеры проекта (ESLint, ruff) будут ругаться на отклонение от принятого стиля.

Почему str.title() в Python неправильно работает с апострофами?

Метод str.title() считает границей слова любой не-буквенный символ, поэтому "o'brien".title() даёт O'Brien — с заглавной B после апострофа, чего не хотелось. Аналогично портятся сокращения: "don't".title() → Don'T. Для корректного результата используйте string.capwords(s) из модуля string — он разбивает по пробелам и капитализирует только первую букву каждого слова целиком. Онлайн-конвертер работает по логике capwords, а не title.

Чем режим иНВЕРСИЯ отличается от простого переключения регистра?

Инверсия меняет регистр каждой буквы на противоположный посимвольно: Привет Мир → пРИВЕТ мИР. Заглавные становятся строчными, строчные — заглавными, цифры и знаки не меняются. Режим используется для стилизации ников, мемов, а также в тестах, чтобы найти код, чувствительный к регистру. Простое переключение ВЕРХНИЙ ↔ нижний приводит все буквы к одному регистру и не учитывает исходное написание. Для конвертации кириллицы в латиницу используйте транслит.