Recorta espacios al inicio y final
Pega cualquier texto. Cada línea pierde sus espacios al inicio y al final — espacios normales, tabs, incluso whitespace Unicode invisible. Por defecto también quitamos las filas que quedan vacías; desactívalo si quieres conservar las líneas en blanco.
O pulsa Ctrl+Enter
Cuándo usar esta herramienta
guíaExportaciones de CRM, Sheets o cualquier pipeline llegan con espacios por sangría o por comillas. Un recorte y la siguiente herramienta ve valores limpios.
Listas de email copiadas de documentos casi siempre traen " john@acme.com " con espacios. Limpia en una pegada antes de importar — muchos validadores rechazan direcciones con espacios.
Columnas alineadas de `awk`, `ps`, `df` o logs de Docker rellenan con espacios. Un recorte por línea — listo para diff, grep o pegar en una columna del tabular.
Al copiar desde párrafos con saltos o PDFs entran espacios Unicode invisibles (NBSP, en-space, etc.) que rompen regex y comparaciones. Un recorte al inicio ahorra horas de depuración.
Cómo funciona
tres pasos- 01
Pega tu texto
Exportes CSV, salida de logs, párrafos copiados de PDF, cualquier cosa con espacios sueltos al inicio o al final.
- 02
Decide qué hacer con las líneas vacías
Por defecto activado — si trim deja una línea vacía, se descarta. Desactiva para preservar el número original de líneas (las que quedan vacías se ven en blanco).
- 03
Haz clic en Ejecutar
Cada línea pierde el whitespace al inicio y al final. Espacios, tabs y whitespace Unicode invisible (NBSP, en-space, em-space, ideographic space) — todo fuera.
Bajo el capó
notas técnicas- Qué se recorta
- /^\s+|\s+$/ en cada línea
- El \s de JavaScript cubre tab, espacio, NBSP (U+00A0), en-space (U+2002), em-space (U+2003), thin space (U+2009), ideographic space (U+3000). Zero-width space (U+200B) no está en \s y se queda.
- Rendimiento
- 100.000 líneas recortadas en ≈90 ms en un MacBook Air M3 de 2024
- Un único escaneo lineal, un replace de regex por línea. La salida se asigna una sola vez al final, sin concatenación por línea.
- Threading
- Web Worker para archivos ≥ 2 MB o ≥ 100.000 líneas
- Por encima del umbral de escritorio la página sigue interactiva mientras el Worker hace el trim y entrega un .txt.
Privacidad y límites
qué se queda dóndeTodo corre en tu pestaña del navegador. Tu texto nunca se sube — sin fetch, sin XHR, sin analytics. Tope duro de 80 MB por ejecución.
Preguntas frecuentes
respondidas¿Quita todo el whitespace o solo el del inicio y final?
Solo inicio y final. El whitespace dentro de la línea — entre palabras, en valores separados por tab — se preserva. Si necesitas colapsar el whitespace interno, usa el extractor regex con un patrón adecuado.
¿Qué caracteres cuentan como whitespace?
La clase \s de JavaScript: espacio ASCII, tab, newline, vertical tab, form feed, más whitespace Unicode incluido NBSP (U+00A0), en-space (U+2002), em-space (U+2003), thin space (U+2009), ideographic space (U+3000), etc. Aviso: zero-width space (U+200B) no es parte de \s y no se recorta.
¿Descarta las líneas que quedan vacías tras el trim?
Por defecto sí — el toggle "eliminar líneas vacías" está activo. Desactívalo si quieres conservar cada línea original (una línea recortada a vacío se convierte en una fila en blanco en la salida, manteniendo alineados los números de línea).
¿Se envía mi texto a un servidor?
No. El trim corre entero en tu navegador. No hay paso de subida, ni procesamiento en servidor, ni telemetría sobre el texto que pegas.