Pesquisa difusa de informações textuais é a busca por strings semelhantes ou próximas à consulta de pesquisa.
Ao mesmo tempo, o grau de difusão ou semelhança das cadeias de texto é mais frequentemente avaliado usando a distância de edição (distância levenshtein). E a distância de edição de duas strings é o número mínimo de operações de substituição, inserção e exclusão de caracteres necessárias para transformar uma sequência em outra. Uma transposição de dois caracteres adjacentes também pode ser considerada como uma operação de edição válida (distância Damerau-Levenshtein).
Um exemplo de pesquisa difusa para um determinado valor de fuzziness de 2 edições é a consulta de pesquisa "árvores" e o resultado da pesquisa "estes". Aqui o personagem "r" é substituído por "h" e os caracteres "e" e "s" são transpostos. Ou seja, a distância Damerau-Levenshtein para essas duas palavras é 2 neste exemplo de pesquisa difusa.
Os seguintes métodos são mais usados para implementar a pesquisa embaçada:
Neste aplicativo, para obter uma combinação difusa de palavras em um documento, você precisa especificar o número necessário de erros (valor de fuzziness) de 1 a 9 caracteres. Você também pode definir a opção de procurar palavras com apenas um número mínimo de diferenças, ou procurar por todas as palavras dentro de um determinado número de diferenças.
A biblioteca GroupDocs.Search tem muitas outras opções de correspondência difusa. Por exemplo, você pode definir o número de diferenças entre as palavras como uma função linear do comprimento da palavra, ou até mesmo definir o número de diferenças individualmente para cada valor do comprimento da palavra.
Você pode realizar pesquisa difusa em muitos formatos de arquivo. Veja a lista completa abaixo.