Convertidor de Mayúsculas
Convierte rápidamente mayúsculas y minúsculas con múltiples convenciones de nomenclatura
Seleccionar Modo de Conversión
¿Qué es la Conversión de Mayúsculas y Minúsculas?
La conversión de mayúsculas y minúsculas transforma los caracteres alfabéticos a diferentes formas. Además de las conversiones básicas de mayúsculas, minúsculas y capitalización, soporta múltiples convenciones de nomenclatura de programación como camelCase, PascalCase, snake_case, kebab-case y más. Estas conversiones son muy útiles para programadores y editores para estandarizar rápidamente formatos de texto o convertir estilos de nomenclatura de variables. Text Case convierte texto entre mayúsculas, minúsculas, title case, sentence case, camelCase, kebab-case, snake_case y estilos relacionados. Es útil para títulos, nombres de archivo, variables, slugs, campos de tabla, etiquetas y edición de copy. El idioma y el contexto siguen importando: nombres propios, acrónimos, sustantivos alemanes, marcas y términos técnicos pueden quedar mal por conversión automática. En textos públicos, identificadores de código o cadenas localizadas, conviene revisar el resultado antes de pegarlo.
Cómo usar
Operaciones básicas
- Introduce o pega el texto a convertir en el cuadro de entrada izquierdo
- Haz clic en el botón correspondiente para seleccionar el modo de conversión
- El lado derecho muestra automáticamente el resultado convertido
- Haz clic en 'Copiar' para copiar el resultado al portapapeles
Reglas de texto
- La conversión de mayúsculas y minúsculas funciona mejor con texto latino plano; los nombres, acrónimos, identificadores de código y letras específicas de cada idioma pueden requerir revisión manual.
- Antes de reemplazar texto en producción, verifica que la puntuación, los espacios y los límites de palabras se hayan conservado.
Casos de uso
Principio técnico
Las mayúsculas y minúsculas no son simples intercambios de ASCII. JavaScript expone toUpperCase, toLowerCase, y las variantes con localización toLocaleUpperCase/toLocaleLowerCase. La trampa clásica del turco es que 'I'.toLocaleLowerCase('tr-TR') devuelve la 'ı' sin punto (U+0131) en lugar de 'i', y 'i'.toLocaleUpperCase('tr-TR') devuelve la 'İ' con punto (U+0130). La 'ß' alemana en mayúsculas se convierte en 'SS' bajo la localización predeterminada, pero en la eszett mayúscula 'ẞ' (U+1E9E) bajo 'de-DE-x-eszett'. La herramienta se ejecuta en la localización predeterminada a menos que el usuario lo cambie, lo que coincide con lo que la mayoría de identificadores de código esperan. Los estilos camel, Pascal, snake, kebab, constant, dot y path comienzan dividiendo la entrada en tokens de palabras. Los límites de palabra se detectan en espacios en blanco, guiones, guiones bajos, puntos, barras y en cualquier transición de minúscula a mayúscula (de modo que 'userProfileID' se divide en ['user', 'Profile', 'ID']). La lista de tokens se convierte a minúsculas, se capitaliza según el estilo y se une con el separador correspondiente: '' para camelCase y PascalCase, '_' para snake_case, '-' para kebab-case, '_' con mayúsculas para CONSTANT_CASE, '.' para dot.case y '/' para path/case. Sentence case capitaliza solo la primera letra después de un signo de puntuación de fin de oración (., !, ?) seguido de espacios en blanco, mientras que Title Case capitaliza la primera letra de cada palabra y convierte el resto a minúsculas. Unicode tiene puntos de código de capitalización específicos como el dígrafo 'Dž' (U+01C5), que no es ni la minúscula 'dž' ni la mayúscula 'DŽ', y los métodos estándar de String.prototype no lo producen; se necesitan bibliotecas especializadas para la capitalización Unicode completa. La generación de slugs de URL requiere un paso adicional de normalización — NFKD más eliminación de marcas combinantes — para convertir 'café' en 'cafe' antes de la unión kebab-case.
- Trampas de localización: 'I'.toLocaleLowerCase('tr-TR') = 'ı'; 'i'.toLocaleUpperCase('tr-TR') = 'İ'; la 'ß' alemana se convierte a 'SS' por defecto, 'ẞ' bajo de-DE-x-eszett
- División de palabras: tokenizar en espacios en blanco, '-', '_', '.', '/', y en transiciones de minúscula a mayúscula ('userProfileID' -> ['user','Profile','ID'])
- Ensamblado de estilos: camelCase = minúscula primera + capitalizar resto, unir ''; PascalCase = capitalizar todas, unir ''; snake = '_'; kebab = '-'
- CONSTANT_CASE / SCREAMING_SNAKE: snake_case pasado por toUpperCase, habitual para claves de variables de entorno
- Sentence case: capitalizar la primera letra después de [.!?] más espacios en blanco; todo lo demás en minúsculas
- Unicode titlecase: existen puntos de código dedicados como 'Dž' (U+01C5) pero los métodos de String.prototype no los producen
- Pipeline de slugificación: str.normalize('NFKD').replace(/\p{M}+/gu, '') elimina los diacríticos para que 'café' se convierta en 'cafe' antes del kebab-case
Ejemplos
Convertir 'hello world' entre los formatos comunes
Entrada: 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/worldRefactorizar una variable JavaScript a snake_case para Python
Entrada: userProfileSettings
Salida snake_case: user_profile_settings
CONSTANT_CASE: USER_PROFILE_SETTINGS
# Útil al portar código entre
# JavaScript (camelCase) y Python (snake_case).Convertir el título de un artículo en un slug de URL
Entrada: My First Blog Post: A Beginner's Guide!
kebab-case: my-first-blog-post-a-beginners-guide
URL final: https://blog.example.com/my-first-blog-post-a-beginners-guideAlternar mayúsculas y minúsculas para texto estilizado
Entrada: Hello World
tOGGLE: hELLO wORLD
Entrada: ToolAct Online
tOGGLE: tOOLaCT oNLINEPreguntas frecuentes
¿Qué estilos de mayúsculas/minúsculas admite?
UPPERCASE, lowercase, Title Case (cada palabra en mayúscula), Sentence case (solo la primera letra), camelCase (firstWordLowercase), PascalCase (FirstWordUpper), snake_case, kebab-case y CONSTANT_CASE. La página los aplica todos en tiempo real.
¿Qué diferencia hay entre Title Case y Sentence case?
Title Case pone en mayúscula cada palabra significativa: 'The Quick Brown Fox'. Sentence case solo capitaliza la primera palabra y los nombres propios: 'The quick brown fox'. Title Case tiene variantes: algunas omiten palabras cortas (a, an, the, of, in); la página suele usar el estilo APA o AP. Revisa el listado de opciones.
¿Cómo se manejan los caracteres CJK?
Los caracteres chinos, japoneses y coreanos no tienen mayúsculas ni minúsculas, así que pasan sin cambios. En textos mixtos CJK + latino solo cambia la parte en alfabeto latino. El romaji (transcripción del japonés), el pinyin (transcripción del chino) y la romanización del coreano sí cambian con normalidad.
¿Maneja caracteres acentuados?
Sí: é → É, ñ → Ñ, ß → SS (la mayúscula del eszett alemán, según las reglas de Unicode). Algunos sistemas heredados convierten ß en SS; el Unicode moderno permite ẞ. La página usa los métodos toLowerCase/toUpperCase nativos de JavaScript, que siguen el case folding de Unicode.
¿Por qué la I turca se comporta de forma rara?
El turco tiene la ı sin punto y la i con punto: en la configuración regional turca, la minúscula de I es ı (sin punto), no i. Las funciones de minúsculas/mayúsculas por defecto de JavaScript no aplican reglas de localización. Si te importa el caso turco, usa String.prototype.toLocaleLowerCase('tr') en tu código.
¿Puedo convertir de snake_case otra vez a Title Case?
Sí. El detector reconoce los estilos habituales y convierte entre cualquier par: snake_case → kebab-case, PascalCase → camelCase, etc. Los acrónimos en PascalCase (por ejemplo, HTMLParser) a veces no hacen un viaje de ida y vuelta limpio por snake_case: depende de si la página trata las mayúsculas seguidas como una sola palabra o varias.
¿Se sube mi texto?
No. La conversión se ejecuta en tu navegador con métodos de cadena de JavaScript. El texto pegado no se transmite.