确定Javascript中两个字符串是否相似?

Teg*_*der 16 javascript string logic

假设我有两个字符串,有没有办法检查它们是否至少有90%相似?

var string1 = "theBoardmeetstoday,tomorrow51";
var string2 = "Board meets today, tomorrow";
Run Code Online (Sandbox Code Playgroud)

谢谢,

Tegan

rta*_*bot 16

Levenshtein距离的维基百科条目包括一个示例实现.

  • 您是否可以使用此示例提供指向页面的确切修订的链接(如果该示例已从页面中删除?) (3认同)
  • 以下是该页面的具体修订版(2010年10月14日起):http://en.wikipedia.org/w/index.php?title = Levenshtein_distance&oldid = 384505495 (2认同)

Ric*_*dle 10

jsdifflib是Python优秀difflib库的JavaScript端口.

它具有这样的功能ratio(),其"返回[秒]的序列相似性的量度,在范围内的浮子[0,1]. "


Kar*_*roh 5

还要考虑Dice 系数,字符串相似性github 存储库及其相应npm 模块的创建者认为它比 Levenshtein 距离“更好” 。

其文档中的用法:

var stringSimilarity = require('string-similarity');

var similarity = stringSimilarity.compareTwoStrings('healed', 'sealed'); 

var matches = stringSimilarity.findBestMatch('healed', ['edward', 'sealed', 'theatre']);
Run Code Online (Sandbox Code Playgroud)