tengo que aplicar algún tipo de esto:coincidencia aproximada con filtro umbral de C#
string textToSearch = "Extreme Golf: The Showdown";
string textToSearchFor = "Golf Extreme Showdown";
int fuzzyMatchScoreThreshold = 80; // One a 0 to 100 scale
bool searchSuccessful = IsFuzzyMatch(textToSearch, textToSearchFor, fuzzyMatchScoreThreshold);
if (searchSuccessful == true)
{
-- we have a match.
}
Aquí está la función de código auxiliar escrito en C#:
public bool IsFuzzyMatch (string textToSearch, string textToSearchFor, int fuzzyMatchScoreThreshold)
{
bool isMatch = false;
// do fuzzy logic here and set isMatch to true if successful match.
return isMatch;
}
, pero no tengo ni idea de cómo implementar la lógica en el método IsFuzzyMatch. Alguna idea? Tal vez hay una solución preparada para este propósito?
Puede calcular la [distancia de Levenshtein] (http://en.wikipedia.org/wiki/Levenshtein_distance), utilizando palabras como símbolos en lugar de caracteres, donde las palabras se consideran iguales en función de su distancia Levenshtein. Hay [muchos temas de SO] (http://stackoverflow.com/search?q= [c% 23] + Levenshtein + distancia) en la distancia de Levenshtein. – dtb
Ver http://stackoverflow.com/questions/451884/similar-string-algorithm/451910#451910 –