11

文字列のリストがあり、その一部は以前のリリース以降に変更されています。いくつかの変更は些細なものです (間隔、1 単語ずつずらすなど)。「小さな」違いしかない文字列を検出して、可能であれば古い翻訳を使用できるようにしたいと考えています。

「小さな違い」とはどういう意味ですか? データベースで作業を開始するまでわかりません。

2 つの文字列が似ているが同一ではないことを示す調整可能なルーチンを知っていますか? 2 つの文字列の違いを示す数値を返すルーチンはありますか?

4

1 に答える 1

8

そのようなアルゴリズムはたくさんあります。キーワードはファジー文字列マッチングです。

よく知られているのはレーベンシュタイン距離です。これにより、ある文字列を別の文字列に変換するために必要な「変更」の数を計算できるため、文字列がどの程度似ているかを推定できます。

この質問も参照してください: Delphi でソリューションの類似単語を検索する方法。

于 2012-05-01T19:21:00.360 に答える