Dividir texto en oraciones
Pegue un párrafo y obtenga una oración por línea: «Hello world. This is a second sentence! Is this a third?» queda en tres líneas. Varios signos seguidos cuentan como un solo final y la última frase sin punto se conserva. 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. This is a second sentence! Is this a third?
- Cantidad de oraciones
- 3
- Líneas
- Hello world. This is a second sentence! Is this a third?
- Operación
- split_sentences
Un separador de oraciones convierte un bloque denso de prosa en una lista limpia de oraciones para que usted pueda revisar, numerar, editar o enviar cada unidad al siguiente paso de un flujo. Los redactores pegan un borrador y examinan una oración por línea para longitud y ritmo. Los docentes descomponen párrafos de alumnos en afirmaciones atómicas antes de calificar. Editores y equipos de localización aíslan oraciones de origen antes de consultar la memoria de traducción. Equipos de soporte y producto convierten notas de tickets y textos de publicación en unidades revisables sin abrir una pila NLP completa. Esta capacidad recorre su texto plano en busca de puntuación terminal—puntos, exclamaciones e interrogaciones—y devuelve tanto un arreglo ordenado de oraciones como una cadena unida por saltos de línea lista para pegar. Las series del mismo signo terminal cuentan como un solo final, se toleran comillas de cierre opcionales, y una cláusula final sin punto sigue siendo su propia oración para no descartar notas informales. La entrada vacía o solo de espacios se rechaza con un error de validación claro en lugar de una lista vacía silenciosa.
Cómo detecta el separador de oraciones los límites
El detector recorre su texto plano y trata un límite de oración como una serie de caracteres de puntuación terminal del conjunto punto, exclamación e interrogación. Una serie como tres signos de exclamación o una interrogación seguida de una secuencia de puntos al estilo de elipsis sigue siendo un solo final, de modo que la puntuación dramática no crea fragmentos vacíos. Se permiten comillas o corchetes de cierre que se sitúen justo después de la serie terminal y permanecen unidos a la oración que cierran.
Tras un final, el siguiente carácter no espacio inicia la oración siguiente, y cada segmento se recorta para que espacios iniciales y finales no contaminen la lista. Si la cláusula final del texto no tiene marca terminal alguna, ese fragmento final sigue convirtiéndose en una oración, lo que coincide con cómo se redactan mensajes y notas tipo viñeta sin cerrar cada línea con un punto.
Abreviaturas como Doctor o Mister que usan un punto pueden partir antes de lo que preferiría un editor humano; trate el resultado como una división rápida por puntuación terminal para revisión, no como un análisis lingüístico completo.
Dónde aparecen las divisiones de oraciones en el trabajo real
Los coaches de escritura y las clases de lengua de secundaria descomponen párrafos en oraciones para que los estudiantes revisen longitud, concordancia y fuerza de la afirmación una unidad a la vez. Los profesionales de marketing de contenidos pegan héroes de landing y aperturas de correo para ver si dominan líneas cortas o cláusulas largas apiladas antes de una prueba A/B. Los equipos de localización dividen cadenas de origen en filas de oraciones para la memoria de traducción y las colas de revisión, y luego reensamblan tras la aprobación.
Los equipos de soporte y jurídicos repasan fragmentos de políticas y plantillas de tickets línea a línea para mantener las respuestas escaneables. Los ingenieros de producto limitan campos de formulario, prompts de reseña y ejemplos de entrenamiento de chatbots expandiendo un bloque en oraciones discretas antes de las comprobaciones de aceptación.
Si más adelante necesita solo un total sin la lista, una reescritura en sentence case o un desglose de palabras y caracteres, trátelos como intenciones de búsqueda y landings distintas en lugar de sobrecargar esta página centrada en el separador de oraciones.
Qué puede hacer con ella
Revisión editorial una oración por línea
Pegue un párrafo borrador y obtenga cada oración en su propia línea para comprobar longitud, ritmo y claridad antes de publicar.
Comprobaciones de afirmaciones en aula y deberes
Divida ensayos de estudiantes en oraciones individuales para revisión entre pares, auto-calificadores o scripts del profesor que puntúan una afirmación a la vez.
Filas de oraciones en localización y CMS
Descomponga el copy de origen en unidades de oración para memoria de traducción, tablas CMS y puertas de calidad antes del reensamblado.
Preguntas frecuentes
¿Cómo decide el separador dónde termina una oración?
Detecta puntuación terminal: puntos, exclamaciones e interrogaciones. Una serie de esos signos cuenta como un solo final. Comillas o corchetes de cierre opcionales tras la serie permanecen en esa oración. Una cláusula final sin marca sigue siendo una oración.
¿Qué ocurre si envío texto vacío?
No se permiten cadenas vacías ni solo de espacios; proporcione una cadena no vacía para dividir.
¿Esto solo cuenta oraciones?
No. Esta landing devuelve la lista real de oraciones y una cadena una por línea. Para un total sin la lista dividida, use la página del contador de oraciones.
¿Cuánto cuesta?
La herramienta del navegador es gratis y se ejecuta en local.
¿Respeta las abreviaturas como Dr. o Sr.?
No siempre. Cualquier punto se toma como final de oración, así que un tratamiento abreviado con punto puede cortar la frase antes de tiempo. Revise esas líneas y únalas donde haga falta.
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/split-sentences \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"text":"Hello world. This is a second sentence! Is this a third?"}'const res = await fetch("https://api.kit.forhosting.com/str/split-sentences", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"text": "Hello world. This is a second sentence! Is this a third?"
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/str/split-sentences",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"text": "Hello world. This is a second sentence! Is this a third?"
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/str/split-sentences", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"text":"Hello world. This is a second sentence! Is this a third?"}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"text":"Hello world. This is a second sentence! Is this a third?"}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/str/split-sentences", 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. This is a second sentence! Is this a third?"
}Ejemplo de respuesta
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "str.split_sentences",
"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.
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
Cómo detecta el separador de oraciones los límites
Las cadenas vacías y solo de espacios se rechazan con invalid_input para que los llamadores no confundan un pegado en blanco con una división exitosa de cero oraciones. El algoritmo es un escaneo de cadena puro y determinista: sin semillas aleatorias, sin marcas de tiempo de reloj, sin llamadas de red y sin modelo de lenguaje, de modo que la misma entrada produce siempre el mismo JSON.
Qué envía usted y qué recibe de vuelta
Las cargas muy grandes por encima del tope de caracteres se rechazan con un mensaje de longitud claro para que los workers se mantengan acotados. Envíe un campo de cadena obligatorio llamado text, o uno de los alias documentados como content, body, message o input. La carga de ejemplo del contrato es una muestra breve de tres oraciones para que el formulario gratuito y la sonda de API compartan un caso de trabajo que usted pueda copiar. En éxito la respuesta repite el text original, devuelve sentences como un arreglo ordenado de cadenas recortadas con las marcas terminales en cada unidad, repite la longitud bajo sentence_count para comprobaciones rápidas, y construye lines uniendo esas oraciones con caracteres de nueva línea para obtener una oración por línea sin posprocesado. El campo operation es siempre la constante split_sentences para registros y paneles multi-herramienta. Si falta text, hay cadenas vacías, solo espacios, sustitutos numéricos no finitos u objetos que no son cadenas, fallan con invalid_input y no se cobran. El precio de las llamadas API correctas es la base publicada de $0.002 por ítem; los fallos de validación no consumen saldo prepago, lo que mantiene baratas las pruebas exploratorias mientras ajusta sus entradas.
Dónde aparecen las divisiones de oraciones en el trabajo real
Como esta capacidad es un motor de parse puro, el precio de API es la base publicada de $0.002 por ítem correcto y la validación fallida no consume saldo.
Preguntas técnicas
¿Cuál es la diferencia entre sentences y lines?
sentences es un arreglo JSON ordenado de cada oración recortada. lines es la misma lista unida con caracteres de nueva línea para que usted pegue una oración por línea en un editor o hoja de revisión.