2011-10-26 36 views
0

可能性の重複は:
string comparison with the most similar stringC++文字列の比較

私は最善の方法は、類似性がある(一定の割合のために)のための2つの文字列を比較するについて行くために何を思っていました。 EX:文字列1は「私は本当にパイを食べたい」とし、文字列2は「本当にチーズを食べたい」とし、文字の50%以上が似ているため "true"を返します。

私は、ある文字列の各文字が他の文字列のどこかにあるかどうかを知ることができたと思っていましたが、おそらくより正確な方法を知ることができます。助言がありますか?

答えて

1

Levenshtein distanceなどが該当します。ある文字列を他の文字列に変換するためには、1文字の挿入、削除、または置換を何回行う必要があるかを示します。 3つの操作に異なる優先順位を付けることもできます。

+0

実際、私がリンクしている重複した質問を参照してください。 –

0

このようなファジー比較では、各文字列を単語に分割(strtok()を使用)し、stricmp()を使用して大文字と小文字を区別しない2つの単語配列を比較できます。単語を比較して同じように見えるかどうかを調べるSOUNDEXアルゴリズムもあります。