2013-11-04 104 views
1

我正在研究一個函數,該函數獲取兩個字符串並逐字比較它們。我並不是要求寫入這種功能的邏輯,但我想知道是否已有一個現有的功能可以做到這一點。比較長字符串並返回相似度和百分比

該函數獲取兩個字符串並返回一個百分比值(0到100之間)來表示這兩個字符串的相似程度。

例如:

String 1: "ABCDEFG" 
String 2: "HIJKLMN" 
---------- 
result: 0% 

String 1: "ABCDEFG" 
String 2: "ABCDEFG" 
---------- 
result: 100% 

回答

5

是的,有!這叫做Levenshtein距離! http://en.wikipedia.org/wiki/Levenshtein_distance。您可以使用此算法(您應該能夠在大多數語言中找到實現的levenshtein距離算法)並對其進行擴展,以便獲得表示百分比相似性的int返回值。

+0

確切地說,你可以用包括SQL函數在內的許多語言來實現這個算法。 –