AZ Tools

Calculadora de Distância de Strings

Texto

Digite duas strings e veja quão distantes estão por várias métricas de distância de edição. **Levenshtein** conta inserções, deleções e substituições — a métrica clássica de corretor ortográfico. **Damerau-Levenshtein** também conta transposições adjacentes como uma edição, se ajustando melhor a erros de digitação. **Hamming** conta diferenças posição por posição (só definida quando ambas têm o mesmo comprimento). A **porcentagem de similaridade** é `(1 - levenshtein / max_length) * 100`, útil como limiar fuzzy-match pra deduplicar registros.

Similaridade

57.1%

Levenshtein

3

Damerau-Lev.

3

Hamming

n/a

Damerau-Levenshtein trata `ab → ba` (transposição) como uma edição; Levenshtein clássico conta como duas. Hamming só funciona com strings de comprimento igual.

Como usar

  1. Digite ou cole duas strings.
  2. Leia cada métrica de distância e o % de similaridade.
  3. Use ~85%+ de similaridade como limiar inicial pra deduplicação fuzzy, menor pra busca tolerante a typos.

Perguntas frequentes

Qual métrica usar?
Pra texto digitado onde humanos transpõem caracteres adjacentes, use Damerau-Levenshtein. Pra sequências de proteínas ou códigos de comprimento fixo use Hamming. Pra tudo mais (URL slugs, nomes, texto livre) Levenshtein é o padrão seguro — e o que a maioria das libs de spell-check usa internamente.
Como % similaridade se relaciona com as distâncias?
É Levenshtein normalizado: 100% é idêntico, 0% é que todo caractere precisa ser substituído. O denominador é a string mais longa, então `cat` vs `dog` é 0% (3 edições/3 chars) mas `cat` vs `catt` é 75% (1 edição/4 chars).
Por que Hamming às vezes é 'n/a'?
Distância Hamming só é definida pra strings de comprimento igual. Se comprimentos diferem não há comparação posição a posição significativa — use Levenshtein.
Diferencia maiúsculas?
Sim. `Cat` vs `cat` tem distância Levenshtein 1. Passe ambos inputs pra minúsculas primeiro se quer comparação case-insensitive.

Ferramentas relacionadas