Convertir a CONSTANT_CASE
hello world se convierte en HELLO_WORLD y get-user-profile en GET_USER_PROFILE: cada palabra en mayúsculas, unida por guiones bajos, sin espacios, guiones ni puntos. Es la forma habitual de las variables de entorno, las constantes y los indicadores de funciones. Gratis en su navegador.
- Gratis
- Funciona en su navegador
- Sin registro
- Sus datos no salen de su equipo
Ejecutar — gratis
Ejemplo resuelto
- Texto
- hello world
- Texto
- HELLO_WORLD
- Original
- hello world
- Largo
- 11
- Palabras
- 2
Esta herramienta de conversión a CONSTANT_CASE toma una frase no vacía y devuelve un único identificador SCREAMING_SNAKE_CASE: cada palabra se pone en mayúscula y las palabras se unen con guiones bajos, sin espacios, guiones ni puntos en el resultado. CONSTANT_CASE es la forma habitual de las variables de entorno, las constantes de tiempo de compilación, las claves de configuración, los indicadores de funcionalidad, y muchas guías de estilo de lenguaje que reservan TODO_MAYÚSCULAS para valores que deben mantenerse estables entre compilaciones. Alimente títulos con espacios, propiedades camelCase, raíces de clase CSS kebab-case, fragmentos de paquete con puntos, o puntuación mixta, y el motor reconstruye una cadena CONSTANT_CASE determinista. Nada se adivina a partir de un modelo, nada se obtiene por red, y nada depende del reloj ni de semillas aleatorias.
Dónde encaja la conversión a CONSTANT_CASE en el estudio, la publicación y el software
Los docentes pueden pregenerar claves de respuesta que muestren la forma CONSTANT_CASE esperada sin confiar en macros de hoja de cálculo opacas que cambian reglas de configuración regional a mitad de archivo. Los desarrolladores de backend y DevOps usan CONSTANT_CASE para claves de entorno de proceso, variables de Docker Compose, convenciones de nombrado de secretos de Kubernetes, identificadores de indicadores de funcionalidad, y constantes de tiempo de compilación en guías de estilo de C, Go y Rust.
Los equipos de integración convierten títulos de columnas CSV heredados en claves SCREAMING_SNAKE_CASE estables antes de que los cargadores de configuración y los gestores de secretos congelen el contrato. Las apps móviles y multiplataforma mapean etiquetas humanas en identificadores de constante compartidos que enlazan módulos nativos y puentes de JavaScript. Los equipos de soporte y operaciones pegan asuntos de tickets ruidosos o nombres en clave de lanzamiento en CONSTANT_CASE para que los tableros y los manuales de operación compartan una sola forma de identificador.
Combínela con herramientas de camelCase, mayúsculas o codificación cuando esté construyendo un pequeño laboratorio de ayudantes de texto gratuitos y deterministas para formularios, preparación de entornos e higiene de datos.
Qué puede hacer con ella
Normalizar claves de entorno y configuración
Convierta encabezados con espacios, propiedades camelCase y etiquetas kebab en claves CONSTANT_CASE estables para archivos de entorno, Docker Compose y gestores de secretos.
Indicadores de funcionalidad y constantes de compilación
Convierta frases humanas en nombres de indicador CONSTANT_CASE y constantes a nivel de lenguaje antes de conectar backends, CI o módulos nativos.
Preguntas frecuentes
¿Cuánto cuesta la herramienta de conversión a CONSTANT_CASE?
Es gratis en su navegador en esta página.
¿Qué ocurre si envío una cadena vacía?
El texto vacío no es una conversión válida; proporcione una frase no vacía con al menos un carácter alfanumérico.
¿Qué separadores se convierten en guiones bajos?
Los espacios, guiones, puntos y otras secuencias no alfanuméricas se tratan como separadores de palabra. Las palabras se ponen en mayúscula y se unen con guiones bajos únicos; los guiones bajos existentes ya actúan como separadores.
¿CONSTANT_CASE es lo mismo que camelCase?
No. camelCase pone en minúscula la primera palabra y elimina los separadores. CONSTANT_CASE pone en mayúscula cada palabra y las une con guiones bajos (SCREAMING_SNAKE_CASE).
¿El resultado es el mismo cada vez para la misma entrada?
Sí. La transformación es pura y determinista: sin red, sin aleatoriedad y sin reloj. La misma frase siempre produce la misma cadena CONSTANT_CASE.
Herramientas relacionadas
Para desarrolladores — acceso por API
Todo lo de esta página está disponible por programación. Esta sección es para equipos que quieren integrarlo en sus sistemas; el resto puede usar la herramienta de arriba sin más.
Endpoint de API
¿Prefiere automatizarlo? Un POST autenticado crea la tarea; el resultado llega por webhook o enlace firmado. La misma capacidad también se ejecuta aquí en la web, por email y desde Telegram — y pronto también desde nuestra app.
Llámela desde su stack
curl -X POST https://api.kit.forhosting.com/str/constant-case \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"text":"hello world"}'const res = await fetch("https://api.kit.forhosting.com/str/constant-case", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"text": "hello world"
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/str/constant-case",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"text": "hello world"
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/str/constant-case", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"text":"hello world"}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"text":"hello world"}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/str/constant-case", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)Ejemplo de solicitud
{
"text": "hello world"
}Ejemplo de respuesta
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "str.constant_case",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}La API es asíncrona: la llamada devuelve un task_id al instante y el resultado llega por webhook. El polling está limitado a 1 req/s por tarea.
Precio
Precio publicado — sin tokens ni créditos inventados. Una tarea fallida no se cobra.
Límites
max_chars | 100000 |
Errores
| HTTP | Código | Significado |
|---|---|---|
401 | unauthorized | API key ausente o inválida. |
402 | insufficient_balance | El saldo no cubre el precio de la tarea. |
404 | unknown_type | El tipo de tarea no existe. |
429 | rate_limited | Demasiadas peticiones. Use el webhook en vez de sondear. |
Notas técnicas
La entrada vacía y las cadenas de solo separadores fallan con un error claro de invalid_input para que un formulario en blanco no pueda parecer una conversión exitosa. Úsela gratis en el navegador para ejercicios de nombrado, preparación de archivos de entorno y limpieza de datos, o llame a la API a $0.002 por solicitud exitosa cuando CI, canalizaciones de formularios o demostraciones docentes necesiten el mismo resultado CONSTANT_CASE cada vez.
Qué significa la conversión a CONSTANT_CASE y qué contiene la respuesta
La conversión a CONSTANT_CASE convierte una frase de varias palabras en un identificador donde cada letra está en mayúscula y las palabras se separan con guiones bajos únicos, sin espacios ni otra puntuación entre ellas. La transformación no es camelCase (que dejaría la primera palabra en minúscula y eliminaría los separadores), no es PascalCase, no es kebab-case, y no es un slug que conserva los guiones: solo queda la escritura SCREAMING_SNAKE_CASE. No hay un modo parcial que solo ponga en mayúscula una cadena ya unida sin volver a tokenizar, ninguna regla de título específica de configuración regional, y ninguna conversión silenciosa de null a un éxito vacío. En la práctica, hola mundo se convierte en HOLA_MUNDO, id_usuario se convierte en ID_USUARIO, obtener-perfil-usuario se convierte en OBTENER_PERFIL_USUARIO, y un fragmento con puntos como orden.linea.articulo se convierte en ORDEN_LINEA_ARTICULO. Esta calculadora devuelve cinco campos estables: text contiene el resultado CONSTANT_CASE que copiará en código, un archivo de entorno, o un esquema; original repite exactamente la cadena de entrada para que pueda auditar qué se transformó; length reporta el conteo de caracteres del resultado; words cuenta cuántos tokens se unieron; y method es la etiqueta fija to_constant_case para registros y canalizaciones de varias herramientas. El motor construye una cadena CONSTANT_CASE completa dentro del largo admitido o rechaza la solicitud con invalid_input. Los casos rechazados incluyen un campo text ausente, un valor null, una cadena vacía, cargas útiles de solo espacio en blanco o de solo separadores que no dejan tokens alfanuméricos, objetos y arreglos que no son texto plano, y cualquier carga útil más larga que el conteo máximo de caracteres documentado.
Cómo se lee el campo text y cómo se mantiene reproducible el resultado
El valor debe ser una cadena no vacía; los números finitos y los bigints se convierten primero a cadena, así que un código numérico simple sigue convirtiéndose en un token CONSTANT_CASE tras la conversión a dígitos decimales. Los espacios iniciales y finales se recortan antes de la tokenización; las secuencias internas de espacios, guiones bajos, guiones, puntos y otros caracteres no alfanuméricos actúan como separadores de palabra y se convierten en un solo guion bajo en la salida solo entre tokens. Los límites existentes de camelCase o PascalCase se expanden, así que tanto XMLHttp Request como getUserID se dividen en palabras sensatas antes de reensamblarse. Cada token se pone en mayúscula completa, lo que mantiene holaMundo, HOLA_MUNDO y hola-mundo en el mismo resultado HOLA_MUNDO tras la tokenización. El campo preferido es text, pero se aceptan los alias input, string, value, content, s y phrase para que cadenas de consulta, hojas de cálculo y formularios tipados puedan reutilizar el mismo contrato sin renombrar columnas. Los booleanos, los objetos planos y los arreglos se rechazan con un mensaje claro para que un cuerpo JSON equivocado no se convierta en la palabra TRUE ni en un volcado de objeto inútil. Una cadena vacía siempre es invalid_input: la promesa del producto es convertir una frase, no inventar un éxito en blanco. El largo está limitado a cien mil caracteres para que un pegado desbocado no pueda monopolizar un Worker; las cargas útiles más largas fallan con un mensaje explícito de límite en lugar de un recorte silencioso truncado. Combine la ejecución gratuita en el navegador de esta página con la API de pago cuando necesite el mismo resultado CONSTANT_CASE dentro de una canalización automatizada sin enviar sus propios ayudantes de cadenas.
Dónde encaja la conversión a CONSTANT_CASE en el estudio, la publicación y el software
Los estudiantes se encuentran con CONSTANT_CASE cuando un ejercicio de programación exige nombres de variables de entorno que coincidan con una guía de estilo, cuando un laboratorio de entrada de datos limpia encabezados de hoja de cálculo en claves de configuración, o cuando una clase de sistemas renombra campos de API camelCase en tokens TODO_MAYÚSCULAS seguros para shell. En esta página el trabajo se ejecuta enteramente en su navegador; a través de la API cada conversión exitosa cuesta $0.002, la validación fallida no se cobra y no se guarda nada después de devolver la respuesta. Esa división —exploración interactiva gratuita y una API de pago idéntica— coincide con el resto del catálogo de nivel A del KIT y le permite pasar de una demostración de aula a una canalización automatizada sin cambiar el resultado de la cadena.
Casos de integración
Fixtures deterministas de constantes
Genere identificadores SCREAMING_SNAKE_CASE reproducibles para pruebas unitarias, archivos dorados y aserciones de CI sobre nombrado y código de transformación.