我正在尋找一種方法來確定兩個字符串之間的差異,並在兩個字符串中突出顯示它們。有沒有什麼可用於.NET來獲得兩個字符串的差異?
我會懷疑大多數'差異'庫不會工作,因爲他們顯示線(我相信)的差異。
算法或庫都可以工作。
謝謝, 馬克
我正在尋找一種方法來確定兩個字符串之間的差異,並在兩個字符串中突出顯示它們。有沒有什麼可用於.NET來獲得兩個字符串的差異?
我會懷疑大多數'差異'庫不會工作,因爲他們顯示線(我相信)的差異。
算法或庫都可以工作。
謝謝, 馬克
你可能會想看看使用Levenshtein distance,或者一些similar algorithm.對於C#實現Levenshtein算法,請參閱here(如果你真的熱衷於寫這個你自己) 。
This question問一些類似的東西,接受的答案指向一堆diff related projects。有很多很好的代碼已經寫入了,這絕對值得一看。
String.Compare會起作用。如果你想比較單詞,只需將初始字符串拆分爲一個字符串數組並循環。
http://stackoverflow.com/questions/1555531/any-existing-c-code-oss-that-will-calculate-diff-between-two-strings-and-outpu/1556086#1556086 – adrianbanks 2010-04-28 20:53:47
@adrianbanks:那裏的答案沒有做我認爲海報想要的內部差異。 – 2010-04-28 20:56:45
http://stackoverflow.com/questions/2008904/looking-for-method-to-tell-the-difference-between-to-strings – 2010-04-28 21:05:35