C#中有一種簡單的方法來比較兩個字符串並找出兩者之間的相似百分比嗎?假設你有一個字符串「我喜歡Bing」和「我喜歡Google」,它會比較「I」「Like」「Bing」和單詞「I」「Like」「Google」等字樣,然後會說2/3它是一樣的,並會返回.66比較兩個字符串C#?
回答
Damerau–Levenshtein distance可能是我見過的最常見的實現。給定維基百科頁面上的樣本應該足夠簡單,以在C#中實現。
http://blogs.msdn.com/b/toub/archive/2006/05/05/590814.aspx這裏也有一些代碼。 – 2011-03-20 22:12:32
或在這裏:http://www.dotnetperls.com/levenshtein – BrokenGlass 2011-03-20 22:13:01
http://en.wikibooks.org/wiki/Algorithm_implementation/Strings/Levenshtein_distance#C.23 – 2011-03-20 22:13:19
您可能會檢查的幾種方法是Levenshtein Distance和Soundex Algorithm。
- 1. C++比較兩個字符串文字
- 2. 比較兩個寬字符串visual C++
- 3. 比較C++中的兩個字符串
- 4. 比較兩個字符串的OBJ-C
- 5. 比較兩個字符串C++
- 6. 比較C#中的兩個字符串
- 7. C#比較兩個字符串數組
- 8. C++:比較兩個字符串
- 9. 比較C++中的兩個字符串
- 10. 比較兩個字符串[]
- 11. 比較兩個字符串?
- 12. 比較兩個字符串
- 13. 字符串(C) - 比較兩個字符串的字母
- 14. 比較由單個字符的兩個字符串C++
- 15. 比較兩個數字字符串值
- 16. 比較兩個字符串由字母
- 17. 比較兩組字符串
- 18. 比較字符串兩場
- 19. 逐字比較.NET中兩個字符串的比較
- 20. PHP不能比較兩個「字符串」
- 21. 比較兩個XML字符串
- 22. 比較兩個字符串與Android
- 23. 兩個字符串然後比較
- 24. Java excel - 比較兩個字符串
- 25. 比較兩個字符串的含義
- 26. lex yacc比較兩個字符串
- 27. 如何比較兩個w_char []字符串
- 28. 比較ruby中的兩個字符串
- 29. 比較兩個字符串,刪除
- 30. 比較兩個字符串列表.CSV
你想做字符串對齊,還是一個接一個的比較? – 2011-03-20 22:09:57
您正在尋找的相似度的定義是什麼? – 2011-03-20 22:10:24
什麼樣的相似性?你在尋找人物角色或模式,比如「我的名字是馬龍」和「我的兄弟是馬龍」。兩者都會產生不同的結果。 – Marlon 2011-03-20 22:11:12