Quitar signos de puntuación de un texto en línea
Quite la puntuación de cualquier texto con un filtro predecible compatible con Unicode que conserva letras, dígitos, espacios, tabulaciones y saltos de línea.
Ejecutar — gratis
Pegue una frase, un párrafo, una lista o un pasaje multilingüe y obtenga texto limpio sin comas, comillas, paréntesis, guiones ni otras marcas ajenas al texto. La operación es determinista, no necesita acceso a la red y mantiene los espacios originales sin compactarlos ni cambiar su formato. Por ello, el resultado sirve para tareas repetibles de preprocesamiento, indexación, comparación y análisis textual sencillo.
Elimine la puntuación sin alterar las palabras
La puntuación facilita la lectura, pero puede estorbar cuando un proceso necesita una secuencia simplificada de palabras y números. Esta herramienta examina carácter por carácter el texto proporcionado y conserva las letras Unicode, los números Unicode y los espacios en blanco. Elimina comas, puntos, apóstrofos, comillas, paréntesis, guiones, barras y marcas similares dondequiera que aparezcan. Las letras y los dígitos restantes mantienen su orden original, y los espacios no se modifican. Por tanto, los espacios, tabulaciones y saltos de línea existentes siguen disponibles para procesos posteriores y no se normalizan de forma silenciosa. El comportamiento es deliberadamente directo: no reescribe frases, no adivina separadores, no cambia mayúsculas, no translitera alfabetos ni sustituye la puntuación por espacios nuevos. Si dos palabras solo están separadas por un signo, pueden quedar unidas al eliminarlo. Cuando necesite conservar la separación, prepare el origen o aplique después una tokenización adaptada a sus datos. La misma regla se usa siempre, de modo que una entrada idéntica produce una salida idéntica.
Filtrado Unicode para textos multilingües
El texto abarca mucho más que el alfabeto inglés, por lo que una expresión limitada a ASCII descartaría nombres válidos, caracteres acentuados y sistemas de escritura completos. El filtro utiliza propiedades de caracteres Unicode para reconocer letras y números de las escrituras compatibles. Puede conservar letras latinas con diacríticos, griegas, cirílicas y árabes, ideogramas CJK y caracteres numéricos Unicode, mientras elimina la puntuación que los rodea. También reconoce el espacio en blanco como categoría Unicode, lo que preserva espacios comunes, tabulaciones y saltos de línea. Los símbolos que no son letras, números ni espacios también se eliminan, conforme al contrato que limita el resultado a esas categorías. Esto incluye adornos y emoji, que no se consideran letras. La herramienta no normaliza Unicode, por lo que no transforma secuencias canónicamente equivalentes en una representación común. Tampoco convierte a minúsculas, extrae raíces, ordena, elimina duplicados ni interpreta el texto. Estas restricciones hacen transparente el resultado: solo se filtran caracteres. Use otra herramienta lingüística o de normalización si necesita reglas de equivalencia adicionales.
Integre el resultado en procesos repetibles
El texto sin puntuación resulta útil como representación intermedia para índices de búsqueda, recuentos sencillos de palabras, preparación de identificadores, ejercicios educativos, limpieza de conjuntos de datos y comparaciones en las que la puntuación no debe influir. Envíe el contenido en el campo de texto obligatorio y lea el valor filtrado en el campo de texto devuelto. La API cuesta $0.002 por solicitud, mientras que el navegador puede ejecutar localmente la misma lógica determinista. Una entrada vacía se rechaza porque no contiene texto que procesar; el error explícito permite detectar omisiones accidentales en vez de devolver un éxito engañoso. Una entrada formada solo por espacios sí se acepta y se conserva, porque estos pertenecen expresamente al conjunto permitido. Antes de emplear la salida como identificador permanente o forma canónica sensible, defina reglas adicionales de mayúsculas, normalización, escritura y colisiones. Al eliminar signos, dos originales distintos pueden producir el mismo resultado y algunos fragmentos pueden quedar unidos. Conserve el original junto a la versión filtrada para poder mostrarlo, auditarlo o procesarlo después con otras reglas.
Qué puede hacer con ella
Preparar texto para un análisis sencillo
Elimine la puntuación antes de contar o comparar palabras y conserve la distribución de espacios y líneas del original.
Limpiar etiquetas importadas
Filtre signos y símbolos decorativos de etiquetas copiadas sin perder letras y dígitos de distintos idiomas.
Comparar pasajes sin considerar la puntuación
Cree una forma intermedia determinista cuando las diferencias de puntuación no deban afectar una comparación posterior.
Preguntas frecuentes
¿Cuánto cuesta?
La API cuesta $0.002 por solicitud. La versión para navegador ejecuta localmente la misma lógica determinista.
¿Qué caracteres se conservan?
Se conservan, en su orden original, las letras Unicode, los números Unicode y los espacios en blanco.
¿Mantiene los saltos de línea y las tabulaciones?
Sí. Conserva los espacios en blanco, incluidos espacios, tabulaciones y saltos de línea.
¿Admite letras acentuadas y alfabetos no latinos?
Sí. Usa propiedades de caracteres Unicode en lugar de limitar letras y números a ASCII.
¿Sustituye la puntuación por espacios?
No. Los caracteres no permitidos se eliminan, por lo que algunas partes separadas solo por signos pueden quedar unidas.
¿Qué sucede si el texto está vacío?
Si falta el texto, la cadena está vacía o el valor no es una cadena, se devuelve un error de entrada no válida.
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/text/remove-punctuation \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"text":"Hello, world! Room #42 is ready."}'const res = await fetch("https://api.kit.forhosting.com/text/remove-punctuation", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"text": "Hello, world! Room #42 is ready."
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/text/remove-punctuation",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"text": "Hello, world! Room #42 is ready."
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/text/remove-punctuation", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"text":"Hello, world! Room #42 is ready."}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"text":"Hello, world! Room #42 is ready."}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/text/remove-punctuation", 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! Room #42 is ready."
}Ejemplo de respuesta
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "text.remove_punctuation",
"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_tokens | 20000 |
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. |