Invertir el orden de los párrafos en línea
Una introducción, sus detalles y una conclusión vuelven como conclusión, detalles e introducción: 3 párrafos en orden inverso, cada uno intacto por dentro, con sus líneas cortadas incluidas. Las líneas en blanco marcan dónde termina cada párrafo. Gratis en su navegador.
- Gratis
- Funciona en su navegador
- Sin registro
- Sus datos no salen de su equipo
Ejecutar — gratis
Invertir el orden de los párrafos reorganiza un texto desde el último bloque hasta el primero sin invertir palabras, frases ni caracteres dentro de cada párrafo. Pegue un texto separado por líneas en blanco y obtendrá los mismos bloques en la secuencia opuesta, con una separación uniforme. Los saltos de línea internos permanecen unidos a su párrafo, por lo que citas, direcciones, listas y fragmentos de varias líneas conservan su estructura. Es una operación determinista y local, idónea para esquemas, borradores, transcripciones o notas exportadas en el orden equivocado.
Cómo se invierte el orden de los párrafos
La herramienta considera párrafo todo bloque no vacío separado del siguiente por una o varias líneas en blanco. Primero comprueba que el texto exista, sea una cadena, contenga algún carácter visible y no supere el límite de cien mil caracteres. Después normaliza los saltos de línea para ofrecer el mismo resultado en distintos sistemas.
Una línea vacía, incluso si solo contiene espacios o tabulaciones, marca un límite; un único salto de línea no lo hace, de modo que una cita o un texto ajustado en varias líneas permanece unido. A continuación copia la lista de párrafos completos y la invierte. No lee cada párrafo al revés, no lo resume ni cambia sus palabras.
Finalmente une los bloques con una línea vacía. El resultado incluye el texto listo para copiar, el número de párrafos detectados y una matriz estructurada con los bloques ya invertidos.
Casos límite, decisiones y restricciones
Use esta función cuando los bloques sean correctos pero su secuencia esté invertida: notas de la más reciente a la más antigua, respuestas recopiladas desde el final de un formulario o secciones copiadas desde un esquema al revés. Varias líneas vacías se convierten en un solo límite y no crean párrafos vacíos. Los saltos simples permanecen dentro del bloque, por lo que una lista sin líneas en blanco cuenta como un único párrafo.
La herramienta no interpreta HTML, Markdown, títulos, páginas, temas ni frases; trabaja exclusivamente con límites de texto plano. Elimine el marcado antes si deben mandar los elementos. También normaliza los saltos a LF y retira el espacio exterior del documento.
Revise las referencias como «arriba», «abajo», «primero» o «por último», ya que invertir la estructura no reescribe esas expresiones contextuales.
Qué puede hacer con ella
Reordenar notas cronológicas
Convierta una exportación de más reciente a más antigua en una lectura cronológica sin modificar cada nota.
Corregir un borrador invertido
Cambie la secuencia de secciones sin alterar frases, citas ni saltos internos.
Preparar flujos de contenido
Obtenga texto unido y una matriz de párrafos invertidos para CMS, pruebas y automatizaciones.
Preguntas frecuentes
¿Se invierten las palabras dentro de cada párrafo?
No. Solo cambia el orden de los bloques; las palabras, frases y líneas internas permanecen igual.
¿Cómo se detectan los párrafos?
Una o varias líneas vacías separan los párrafos. Una línea con espacios también cuenta como vacía.
¿Se conservan varias líneas vacías?
No. Forman un único límite y la salida utiliza una línea vacía entre bloques.
¿Por qué no cambió nada al invertir mi texto?
Lo más probable es que no haya líneas en blanco entre sus párrafos, así que todo el texto se lee como un solo bloque. Añada una línea vacía entre cada párrafo y vuelva a intentarlo: los bloques cambiarán de lugar.
¿Cómo invierto cada línea en lugar de cada párrafo?
Aquí un salto de línea simple nunca divide un párrafo, así que las líneas de un bloque se mantienen juntas. Para invertir línea por línea, inserte antes una línea en blanco entre ellas o use una herramienta que invierta el orden de las líneas.
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/reverse-paragraphs \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"text":"Introduction comes first.\n\nSupporting details come second.\n\nConclusion comes last."}'const res = await fetch("https://api.kit.forhosting.com/str/reverse-paragraphs", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"text": "Introduction comes first.\n\nSupporting details come second.\n\nConclusion comes last."
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/str/reverse-paragraphs",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"text": "Introduction comes first.\n\nSupporting details come second.\n\nConclusion comes last."
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/str/reverse-paragraphs", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"text":"Introduction comes first.\\n\\nSupporting details come second.\\n\\nConclusion comes last."}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"text":"Introduction comes first.\n\nSupporting details come second.\n\nConclusion comes last."}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/str/reverse-paragraphs", 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": "Introduction comes first.\n\nSupporting details come second.\n\nConclusion comes last."
}Ejemplo de respuesta
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "str.reverse_paragraphs",
"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
Uso del resultado en la API o en el navegador
Si aporta una introducción, detalles y una conclusión, recibirá primero la conclusión, después los detalles y al final la introducción. Utilice el campo text para pegar el resultado en un editor, guardarlo en un CMS o encadenarlo con otra operación. Conserve las líneas en blanco, pues definen los límites. Envíe un objeto JSON con el campo text y el documento completo en texto plano. Consulte paragraphs si necesita procesar cada bloque por separado y paragraph_count para verificar el total. El navegador y la API ejecutan la misma función pura, por lo que no existen diferencias entre la vista previa y la automatización. Cada solicitud correcta de la API cuesta $0.002; una entrada inválida devuelve invalid_input. La función no usa red, modelos, azar ni reloj, así que una entrada idéntica siempre produce el mismo JSON.
Preguntas técnicas
¿Qué ocurre si solo hay un párrafo?
El resultado conserva ese bloque, devuelve paragraph_count igual a uno y una matriz con un elemento.
¿Cuánto cuesta una solicitud de API?
Una solicitud correcta cuesta $0.002. Una entrada inválida devuelve invalid_input.