Case
Converter
Convert text between UPPERCASE, lowercase, Title Case, camelCase, snake_case, and more.
How It Works
Enter Text
Type or paste the text you want to convert.
Pick a Case
Choose from 9 case styles including camelCase and snake_case.
Copy
Copy the converted text to your clipboard instantly.
Convierte texto entre mayúsculas y minúsculas online entre MAYÚSCULAS, minúsculas, Tipo Título, Tipo oración, camelCase, snake_case, kebab-case, PascalCase, CONSTANT_CASE y dot.case. El conversor de capitalización de ConverterUp es una ayuda rápida para desarrolladores que renombran variables, redactores que limpian titulares y especialistas SEO que normalizan slugs. Pega tu entrada, haz clic en el formato que necesites y copia el resultado con un toque. El texto se procesa íntegramente en el navegador, así que borradores de blog, fragmentos de código y nombres internos de producto nunca salen de tu dispositivo ni quedan registrados en un servidor de terceros.
Dónde se usa cada estilo
camelCase (userId, fetchUserData) es la convención de JavaScript y TypeScript para variables y funciones. También es estándar en Java, Swift, Kotlin y la mayoría de lenguajes OO modernos para variables locales y métodos.
snake_case (user_id, fetch_user_data) domina en Python (PEP 8), Ruby, Rust y SQL. Es también la convención de facto de JSON para APIs diseñadas contra backends en Python o Rails. Snake case gana en identificadores largos porque los guiones bajos generan separaciones de palabra naturales.
kebab-case (user-id, fetch-user-data) es la convención para slugs de URL, para clases CSS y custom properties y para atributos HTML. No es válido como identificador en casi ningún lenguaje de programación porque el guion se interpreta como resta.
PascalCase (UserId, FetchUserData) marca tipos y clases en la mayoría de lenguajes: clases en JavaScript/TypeScript/Python/Java/C#, structs en Rust y Go (solo exportados), componentes en React. CONSTANT_CASE (MAX_RETRIES) es universal para constantes en tiempo de compilación, variables de entorno y claves de configuración.
ToolSeo.case-converter.section1.p5
Convenciones por lenguaje y framework
Go usa la capitalización como visibilidad: los identificadores que empiezan con mayúscula son exportados (públicos); los que empiezan con minúscula son privados del paquete. User y user no son una elección de estilo: cambian la semántica del lenguaje. Esto es exclusivo de Go entre los lenguajes mayoritarios.
Ruby usa snake_case para métodos y variables, PascalCase para clases y módulos, y SCREAMING_SNAKE para constantes. Rust aplica las mismas convenciones con avisos del compilador: los lints non_snake_case y non_upper_case_globals saltan ante incumplimientos de estilo.
Las convenciones JSON no están estandarizadas, pero se reparten de facto por ecosistema: las APIs REST con backends Python/Rails usan claves en snake_case; las APIs con backends Node/Java usan camelCase; algunas APIs heredadas de Microsoft usan PascalCase. Mantén una sola convención por API y documéntala.
CSS usa kebab-case para propiedades (background-color), custom properties (--brand-primary) y nombres de clase por convención (.product-card, BEM .product-card__title--featured). HTML usa kebab-case para atributos data personalizados (data-user-id) pero reserva camelCase para las propiedades ARIA accedidas desde JavaScript (el.dataset.userId).
ToolSeo.case-converter.section2.p5
Trampas programáticas: acrónimos, números, transiciones
Los acrónimos son la parte más difícil de la conversión. ¿XMLHttpRequest debe pasar a x_m_l_http_request o a xml_http_request? La mayoría de guías de estilo modernas recomiendan lo segundo. La guía de estilo de JavaScript de Google dice tratar los acrónimos como una sola palabra en camelCase: parseHtml, no parseHTML. La guía de .NET dice lo contrario para acrónimos de dos letras: IOStream está bien, pero HtmlParser para los más largos. ConverterUp sigue la convención de Google por defecto y ofrece un interruptor 'conservar acrónimos'.
Los números también son ambiguos. ¿html5Parser se separa como html5 + Parser (los dígitos se pegan a la palabra anterior) o como html + 5Parser? El valor por defecto es que los dígitos se peguen a la palabra anterior, produciendo el snake_case html5_parser. Para identificadores tipo SemVer importa: oauth2Client debe pasar a oauth2_client, no a oauth_2_client.
Los límites de palabra en entradas ya mezcladas se detectan en: transiciones de minúscula a mayúscula (fooBar → foo, Bar), transiciones de acrónimo en mayúsculas a PascalCase (HTMLParser → HTML, Parser), transiciones a dígito cuando 'dividir en dígito' está activado, y separadores explícitos (-, _, ., espacio). Cuando conviertas una mezcla de convenciones, pega una vez, normaliza a un intermedio conocido (a menudo kebab-case) y luego convierte al destino.
ToolSeo.case-converter.section3.p4
ToolSeo.case-converter.section3.p5
ToolSeo.case-converter.section4.heading
ToolSeo.case-converter.section4.p1
ToolSeo.case-converter.section4.p2
ToolSeo.case-converter.section4.p3
ToolSeo.case-converter.section4.p4
ToolSeo.case-converter.section4.p5
ToolSeo.case-converter.section5.heading
ToolSeo.case-converter.section5.p1
ToolSeo.case-converter.section5.p2
ToolSeo.case-converter.section5.p3
ToolSeo.case-converter.section5.p4
ToolSeo.case-converter.section5.p5
Preguntas frecuentes
¿Qué diferencia hay entre Tipo Título y Tipo oración?
Tipo Título pone en mayúscula la primera letra de cada palabra significativa, como en los títulos de libros. Tipo oración solo pone en mayúscula la primera letra de la frase y los nombres propios, lo que es estándar para el cuerpo de texto.
¿La conversión conserva números y puntuación?
Sí. Los dígitos, la puntuación y los emoji se mantienen intactos. La herramienta solo cambia mayúsculas y minúsculas de las letras y ajusta separadores (guion bajo, guion, punto) al convertir a casos amigables para programadores.
¿Maneja correctamente acentos en español y portugués?
Sí. El conversor es totalmente Unicode-aware, así que letras con acento como á, ñ, ü, ã y ç conservan los diacríticos y convierten su capitalización correctamente en cualquier dirección.
¿Hay un límite de longitud de texto?
Hasta 1 MB de texto plano, equivalente a unas 200000 palabras. La transformación es instantánea para cualquier entrada realista gracias a las APIs nativas de strings del navegador.
¿Cómo se manejan los acrónimos como XML, HTTP o ID?
Por defecto el conversor trata las letras mayúsculas consecutivas como una sola palabra y luego solo pone en mayúscula la primera letra en la salida: <code>XMLHttpRequest</code> → <code>xmlHttpRequest</code> (camelCase) o <code>xml_http_request</code> (snake_case). Activa <em>Conservar acrónimos</em> para mantenerlos en mayúsculas: <code>XMLHttpRequest</code> queda como <code>XML_HTTP_Request</code>.
¿Puedo convertir en bloque, línea por línea?
Sí. Pega una entrada multilínea y cada línea se convierte de forma independiente. Útil para renombrar una lista de columnas de base de datos, generar slugs para una lista de títulos o normalizar una exportación de una columna de hoja de cálculo.
ToolSeo.case-converter.q7
ToolSeo.case-converter.a7
ToolSeo.case-converter.q8
ToolSeo.case-converter.a8