Quelqu'un pourrait-il me donner un exemple sur la façon de faire correspondre fuzzy de deux chaînes en utilisant Lucene.NET (ou en utilisant la version Java de Lucene, ou dans tout autre langage qui a le port de Lucene).Lucene.NET (chaînes floues correspondant)
6
A
Répondre
5
Pourriez-vous être un peu plus précis sur ce que vous entendez par appariement flou?
Lucene offre des requêtes floues en utilisant le tilde (~) opérateur et les wildcard (* &?) See here
Si vous voulez comparer la distance de chaîne de 2 chaînes en utilisant des méthodes telles que Levenshtein, Jaro-Winkler, etc. il vaut mieux utiliser une bibliothèque séparée telle que SimMetrics. J'utilise Simmetrics sur mon site de production et ça fonctionne fab.
SimMetricsMetricUtilities.Levenstein ls = new SimMetricsMetricUtilities.Levenstein(); //compare string 1, string 2
double sim = ls.GetSimilarity(string_1, string_2);
if(sim > [some value])
{
//do something
}
Questions connexes
- 1. makemessages de Django crée beaucoup d'entrées floues
- 2. Requêtes floues dans Lucene
- 3. Transparence sur les fenêtres focalisées/floues
- 4. Recherche de dossier Lucene.net
- 5. Les images centrées sont floues
- 6. Images floues WPF - classe Bitmap
- 7. Comment faire une «comparaison de chaînes floues» pour vérifier l'orthographe des mots dans l'application iPhone?
- 8. Distribué Lucene.NET
- 9. Lucene.Net PrefixQuery
- 10. Lucene.NET MultiSearcher
- 11. Caractéristiques Lucene.Net
- 12. Expression Java correspondant pour remplacer les sous-chaînes
- 13. correspondant à des parties de deux chaînes en PHP
- 14. Ruby regex correspondant à des chaînes d'un tableau?
- 15. Comment obtenir les mots clés dans lucene.net
- 16. ActionScript drawRoundRect rendu les coins floues
- 17. Polices floues dans Visual Studio 2005
- 18. Requêtes floues à la base de données
- 19. Lucene.Net BooleanClause numéro
- 20. Lucene.NET Faceted Recherche
- 21. Fluent nhibernate + nhibernate.serach + lucene.net
- 22. Lucene.NET: requête ou filtre?
- 23. Lucene.NET de confiance moyenne
- 24. Lucene.net 2.9.2 NumericField tri
- 25. Lucene.NET et chargement paresseux
- 26. Lucene.net recherche et soulignement
- 27. Lucene.NET - tri par int
- 28. Lucene.NET sur l'hébergement mutualisé
- 29. Lucene.net IndexSearcher.search aucun résultat
- 30. Lucene.Net TermQuery recherche générique
Merci pour la réponse monsieur. Vous avez raison, je veux comparer deux chaînes à l'aide de l'algorithme de Levenshtein, pourriez-vous me donner un exemple de la façon dont vous faites des chaînes de correspondance floue en utilisant SimMetrics? – user306080
est en fait très straight-forward: 1. Ajoutez une référence à la dll Simmetrics dans votre projet 2. Dans la méthode où vous voulez exécuter la similitude, SimMetricsMetricUtilities.Levenstein ls = new SimMetricsMetricUtilities.Levenstein(); // comparer chaîne 1, chaîne 2 double sim = js.GetSimilarity (string_1, string_2); if (sim> [une valeur]) { // faire quelque chose } – Mikos
le seul problème que je vois avec cela, est-ce que vous faites la mise en correspondance après avoir obtenu les résultats de Lucene. – Dementic