Gibt es eine Möglichkeit,% Übereinstimmung zwischen 2 Strings zu berechnen?gibt es eine Möglichkeit,% Übereinstimmung zwischen 2 Strings zu berechnen
Ich habe eine Situation, wo es erforderlich ist, Übereinstimmungen zwischen 2 Strings zu berechnen, wenn es 85%
Spiel dann werde ich 2 Tabellen kombinieren, ich den Code geschrieben haben, für die Kombination von 2 Tabellen
meine Probe Zeichenketten sind:
var str1 = 'i love javascript';
var str2 = 'i love javascripttt';
var matchPer = match(str1,str2); // result might be 80% , 85%, 90% ,95% etc
Was für die Berechnung des Prozent Ihre Logik ist? –
Es gibt nicht nur einen Weg, es gibt viele Wege. Haben Sie eine Richtlinie, um eine auszuwählen? Was bedeutet "85% Übereinstimmung" eigentlich für dich? – hobbs
'1 - levenshtein (str1, str2)/max (str1.length, str2.length)' scheint mir eine vernünftige Metrik zu sein, aber vielleicht möchtest du Damerau-Levenshtein (was den Unterschied zwischen "Bacon" und "Baocn" berücksichtigt) 1 oder 2), oder Hamming-Abstand wie in Ala Eddine JEBALI's Antwort, die Ergänzungen und Streichungen nicht verzeiht ("Bananen" und "Ananas" haben einen Levenshtein-Abstand von 1 aber eine Hamming-Distanz von 6). Sind sie 14% ähnlich oder 86% ähnlich?) – hobbs