ToolActToolAct

Конвертер регистра

Быстрое преобразование регистра текста с поддержкой различных стилей именования в программировании

Ввод
Результат

Выберите способ преобразования

Что такое преобразование регистра?

Преобразование регистра — это операция изменения буквенных символов текста в разные формы регистра. Помимо базовых преобразований (всё в верхнем, всё в нижнем, первая буква заглавная), поддерживаются различные стили именования в программировании: camelCase, PascalCase, snake_case и другие. Эти функции преобразования очень полезны для программистов и редакторов текста, позволяя быстро унифицировать формат текста или преобразовать стиль именования переменных. Text Case преобразует текст между uppercase, lowercase, title case, sentence case, camelCase, kebab-case, snake_case и похожими стилями. Это полезно для заголовков, имен файлов, переменных, slugs, полей таблиц, labels и copyediting. Язык и контекст остаются важными: имена собственные, acronyms, немецкие существительные, бренды и технические термины автоматическое преобразование может испортить. Для публичных текстов, code identifiers и localized UI strings результат нужно перечитать.

Как использовать

Основные операции

  1. Введите или вставьте текст для конвертации в левое поле ввода
  2. Нажмите соответствующую кнопку, чтобы выбрать режим конвертации
  3. Справа автоматически появится сконвертированный результат
  4. Нажмите «Копировать», чтобы сохранить результат в буфер обмена

Правила обработки текста

  • Смена регистра лучше всего работает с обычным латинским текстом; имена, аббревиатуры, идентификаторы в коде и специфичные для локали символы могут потребовать ручной проверки.
  • Перед заменой готового текста проверьте, что пунктуация, пробелы и границы слов сохранены.

Применение

Преобразование текста между распространенными стилями регистраПреобразуйте ввод в верхний регистр, нижний регистр, заглавные слова, предложение, camelCase, PascalCase, snake_case, kebab-case, CONSTANT_CASE, dot.case, path/case или переключённый регистр. Результат обновляется мгновенно при смене режима или ввода, поэтому заголовок, идентификатор или абзац можно проверить в разных стилях рядом. Аббревиатуры вроде API, JSON или iPhone, немецкие существительные, названия брендов и специфичные для локали символы — эсцет или буквы с акцентами — часто требуют ручного восстановления после автоматического приведения к нижнему регистру.
Подготовка идентификаторов для кода и URLРежимы именования нормализуют разделители — пробелы, дефисы, подчёркивания, точки и слеши — и разбивают границы camelCase или PascalCase перед сборкой строки. Это полезно для имён файлов, ключей конфигурации, CSS-классов, маршрутов, переменных окружения и столбцов SQL. Проверьте результат по списку зарезервированных слов вашего языка, так как camelCase или snake_case могут случайно совпасть с именами классов вроде new, class или default в JavaScript и Java.
Использование горячих клавиш редактора для частых преобразованийКогда фокус на панели ввода, горячие клавиши запускают преобразования в верхний регистр, нижний регистр, заглавные, snake_case и kebab-case без отрыва от клавиатуры. Это ускоряет пакетное переименование меток, рефакторинг списка полей базы данных или нормализацию слагов. Следите за предпросмотром, когда пунктуация, пробелы, смешанные языковые скрипты или составные слова вроде iOS или markdown могут быть разделены на неправильной границе.
Сборка слагов и сегментов маршрутов из заголовковПреобразуйте заголовок вроде «Мой первый пост в блоге» в kebab-case, чтобы получить my-first-blog-post для URL-слага. Переключайте чувствительность регистра и обработку разделителей, когда исходные заголовки уже содержат подчёркивания, точки или границы camelCase, которые нужно сначала разбить.
Защита аббревиатур и названий брендов от приведения к нижнему региструПримените нижний регистр к абзацу, содержащему JSON, API или iPhone, а затем вручную исправьте аббревиатуры, которые преобразование исказило. Для production-идентификаторов лучше использовать режимы snake_case или camelCase, которые учитывают существующие последовательности букв вместо агрессивного понижения регистра.

Технический принцип

Приведение к верхнему и нижнему регистру — это не простая замена ASCII-символов. JavaScript предоставляет toUpperCase, toLowerCase и учитывающие локаль toLocaleUpperCase/toLocaleLowerCase. Классическая ловушка турецкого языка: 'I'.toLocaleLowerCase('tr-TR') возвращает бескавычную 'ı' (U+0131) вместо 'i', а 'i'.toLocaleUpperCase('tr-TR') возвращает кавычную 'İ' (U+0130). Немецкая 'ß' при приведении к верхнему регистру по умолчанию становится 'SS', а при локали 'de-DE-x-eszett' — заглавной эсцет 'ẞ' (U+1E9E). Инструмент работает в локали по умолчанию, если пользователь не выберет иное, что соответствует ожиданиям большинства идентификаторов кода. Режимы camel, Pascal, snake, kebab, constant, dot и path начинают работу с разбиения входного текста на словесные токены. Границы слов определяются по пробелам, дефисам, подчёркиваниям, точкам, косым чертам и по любому переходу от строчной к прописной букве (таким образом 'userProfileID' разбивается на ['user', 'Profile', 'ID']). Затем список токенов приводится к нижнему регистру, капитализируется по стилю и соединяется целевым разделителем: '' для camelCase и PascalCase, '_' для snake_case, '-' для kebab-case, '_' с верхним регистром для CONSTANT_CASE, '.' для dot.case и '/' для path/case. Sentence case капитализирует только первую букву после знака конца предложения (., !, ?) и пробелов, а Title Case капитализирует первую букву каждого слова и приводит остальные к нижнему регистру. В Unicode существуют специальные кодовые точки titlecase, например диграф 'Dž' (U+01C5), который не совпадает ни со строчной 'dž', ни с прописной 'DŽ', и стандартные методы String.prototype его не создают; для полной Unicode-капитализации нужны специализированные библиотеки. Для URL-слагификации требуется дополнительный проход нормализации — NFKD с удалением комбинирующих знаков — чтобы превратить 'café' в 'cafe' перед соединением через kebab-case.

  • Ловушки локали: 'I'.toLocaleLowerCase('tr-TR') = 'ı'; 'i'.toLocaleUpperCase('tr-TR') = 'İ'; немецкая 'ß' по умолчанию даёт 'SS', при de-DE-x-eszett — 'ẞ'
  • Разбиение на слова: токенизация по пробелам, '-', '_', '.', '/' и переходам строчная→прописная ('userProfileID' → ['user','Profile','ID'])
  • Сборка стилей: camelCase = строчная первая + капитализация остальных, соединение ''; PascalCase = капитализация всех, соединение ''; snake = '_'; kebab = '-'
  • CONSTANT_CASE / SCREAMING_SNAKE: snake_case, пропущенный через toUpperCase, используется для ключей переменных окружения
  • Sentence case: капитализация первой буквы после [.!?] и пробелов; всё остальное в нижнем регистре
  • Unicode titlecase: существуют специальные кодовые точки, например 'Dž' (U+01C5), но методы String.prototype их не создают
  • Конвейер слагификации: str.normalize('NFKD').replace(/\p{M}+/gu, '') удаляет диакритические знаки, превращая 'café' в 'cafe' перед kebab-case

Примеры

Преобразование 'hello world' во все распространённые регистры

Вход:           hello world

UPPERCASE:       HELLO WORLD
lowercase:       hello world
Capitalize:      Hello World
Sentence case:   Hello world
camelCase:       helloWorld
PascalCase:      HelloWorld
snake_case:      hello_world
kebab-case:      hello-world
CONSTANT_CASE:   HELLO_WORLD
dot.case:        hello.world
path/case:       hello/world

Рефакторинг переменной JavaScript в snake_case для Python

Вход:    userProfileSettings
snake_case выход:    user_profile_settings
CONSTANT_CASE:       USER_PROFILE_SETTINGS

# Полезно при переносе кода между
# JavaScript (camelCase) и Python (snake_case).

Преобразование заголовка статьи в URL-слаг

Вход:        My First Blog Post: A Beginner's Guide!
kebab-case:   my-first-blog-post-a-beginners-guide

Итоговый URL:    https://blog.example.com/my-first-blog-post-a-beginners-guide

Переключение регистра для стилизованного текста

Вход:     Hello World
tOGGLE:    hELLO wORLD

Вход:     ToolAct Online
tOGGLE:    tOOLaCT oNLINE

Часто задаваемые вопросы

Какие стили регистра поддерживаются?

UPPERCASE, lowercase, Title Case (Каждое Слово С Большой), Sentence case (только первая буква), camelCase (firstWordLowercase), PascalCase (FirstWordUpper), snake_case, kebab-case, CONSTANT_CASE. Страница преобразует в каждый из них в реальном времени.

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

Title Case делает с заглавной каждое значимое слово: «The Quick Brown Fox». Sentence case — только первое слово и имена собственные: «The quick brown fox». В Title Case есть стилевые варианты — некоторые пропускают короткие слова (a, an, the, of, in); страница обычно использует стиль APA или AP, проверьте в списке настроек.

Как обрабатываются иероглифы CJK?

У китайских, японских и корейских иероглифов нет понятия регистра, поэтому они проходят без изменений. В смешанном тексте CJK + латиница меняется только латинская часть. Ромадзи (латинская транскрипция японского), пиньинь (латинская транскрипция китайского) и латинизация корейского обрабатываются как обычная латиница.

Поддерживает ли он буквы с диакритикой?

Да — é → É, ñ → Ñ, ß → SS (немецкая прописная эсцет, в зависимости от правил Unicode). В некоторых старых системах ß отображается как SS; современный Unicode допускает ẞ. Страница использует встроенные toLowerCase/toUpperCase из JavaScript, которые следуют unicode case folding.

Почему турецкая I ведёт себя странно?

В турецком есть «i без точки» (ı) и «i с точкой» (i) — в турецкой локали строчная I это ı (без точки), а не i. Стандартные методы JavaScript для смены регистра не учитывают правила локали. Если для вас важен турецкий регистр, в коде используйте String.prototype.toLocaleLowerCase('tr').

Можно ли преобразовать snake_case обратно в Title Case?

Да. Детектор распознаёт распространённые стили регистра и конвертирует между любой парой: snake_case → kebab-case, PascalCase → camelCase и т. д. Аббревиатуры в PascalCase (например, HTMLParser) иногда некорректно проходят туда-обратно через snake_case — зависит от того, считает ли страница подряд идущие заглавные одним словом или несколькими.

Загружается ли мой текст?

Нет. Преобразование выполняется в вашем браузере с помощью строковых методов JavaScript. Вставленный текст не передаётся.

Похожие инструменты

Инструмент подсчета слов

Бесплатный онлайн-счётчик символов, слов, абзацев и времени чтения в реальном времени. Незаменимый помощник при написании статей, эссе и постов для соцсетей.

Инструмент реверса строки

Бесплатный онлайн-инструмент для разворота строки: целиком, по словам или по строкам. Удобная обработка текста для самых разных задач прямо в браузере.

Инструмент преобразования китайского

Бесплатный онлайн-конвертер китайского письма между упрощённым и традиционным. Учитывает различия в лексике материкового Китая, Тайваня и Гонконга при переводе.

Инструмент сравнения текста

Бесплатный онлайн-инструмент для сравнения текста с подсветкой различий. Построчное сравнение помогает быстро найти изменённые фрагменты.

Инструмент тестирования регулярных выражений

Бесплатный онлайн-тестер регулярных выражений с мгновенным сопоставлением и подсветкой совпадений. Отлаживайте и проверяйте regex на ваших примерах.

Markdown-редактор

Бесплатный онлайн-редактор Markdown с предпросмотром в реальном времени, подсветкой синтаксиса и экспортом в HTML. Поддерживает таблицы, блоки кода и диаграммы.