Oh MyUtils

Comparador Diff - Comparar Texto y Encontrar Diferencias Online

Compara dos textos lado a lado y resalta diferencias línea por línea. Soporta modos de vista unificada y dividida con diff a nivel de carácter.

Vista
Modo de diff
Opciones
Original
Modificado
Salida
Sin diferencias

Preguntas Frecuentes

¿Qué es un Comparador de Diferencias?

Un comparador de diferencias es una herramienta que compara dos textos y resalta las diferencias entre ellos. Muestra adiciones (contenido nuevo), eliminaciones (contenido eliminado) y modificaciones. Es esencial para revisión de código, edición de documentos, depuración de configuraciones y comparación de versiones.

¿Cómo funciona el algoritmo diff?

El algoritmo diff utiliza el enfoque de Subsecuencia Común Más Larga (LCS) para encontrar el conjunto óptimo de cambios entre dos textos. Identifica la secuencia más larga de caracteres o líneas que aparecen en ambos textos, luego marca todo lo demás como adiciones o eliminaciones.

¿Cuál es la diferencia entre vista Lado a Lado y Unificada?

La vista Lado a Lado muestra ambos textos en columnas paralelas, facilitando la comparación de líneas correspondientes. La vista Unificada combina ambos textos en una sola columna con prefijos + y -, similar a la salida de Git diff. Lado a Lado es mejor para comparación visual, mientras que Unificada es más compacta.

¿Qué son los modos de diff por Línea, Palabra y Carácter?

El modo Línea compara textos línea por línea - si cualquier parte de una línea cambia, toda la línea se marca. El modo Palabra resalta cambios de palabras individuales dentro de las líneas. El modo Carácter muestra las diferencias más granulares, resaltando cada carácter cambiado. Use Línea para código, Palabra para prosa.

¿Están seguros mis datos al usar esta herramienta?

Sí, todo el procesamiento ocurre 100% en su navegador. Sus textos nunca se envían a ningún servidor. Puede comparar de forma segura documentos sensibles, código o información confidencial sin preocupaciones de privacidad.

Ejemplos de Código

import { diffLines, diffWords } from 'diff';

const original = 'Hello World';
const modified = 'Hello JavaScript World';

// Line diff
const lineDiff = diffLines(original, modified);
lineDiff.forEach(part => {
  const prefix = part.added ? '+' : part.removed ? '-' : ' ';
  console.log(prefix, part.value);
});

// Word diff
const wordDiff = diffWords(original, modified);
wordDiff.forEach(part => {
  if (part.added) console.log('Added:', part.value);
  if (part.removed) console.log('Removed:', part.value);
});

Herramientas relacionadas