我正在制作打字程序,用户输入屏幕上显示的单词行,我需要检查准确性。这似乎很容易,但是,我需要考虑偏移量。如果给定的行是"这是一个测试"并且用户输入"这是一个测试",他们应该只有一个错误。但是,在" ss"之后标记所有内容的简化方法来检查准确性。偏差不正确,应该是对的。有一个简单的方法吗?
答案 0 :(得分:1)
这里描述了几种字符串相似度算法:http://www.morfoedro.it/doc.php?n=223&lang=en
我一直在使用“Ratcliff / Obershelp”算法。它的工作原理如下:
/*
* divide s1 and s2 each into three parts
* in the middle is the longest common substring between them
* leaving (the possibly) empty left and right parts
*
* pennsylvania = pennsy|lvan|ia
* pencilvaneya = penci|lvan|eya
*
* pennsy = |pen|nsy ia = i|a|
* penci = |pen|ci eya = ey|a|
*/