2 つの文字列の異なるレベルを計算する関数を Delphi で作成したいと考えています。2 つの文字列が等しい (大文字と小文字を区別しない) 場合は 0 を返しますが、等しくない場合は異なる文字の数を返す必要があります。この関数は、スペル チェックに非常に役立ちます。
function GetDiffStringLevel(S1,S2:string):Integer;
begin
if SameText(S1,S2) then Exit(0);
// i want get different chars count
end
サンプルコード:
Diff:=GetDiffStringLevel('Hello','Hello');// Diff:=0;
Diff:=GetDiffStringLevel('Hello','2Hello');// Diff:=1;
Diff:=GetDiffStringLevel('Hello','H2ello');// Diff:=1;
Diff:=GetDiffStringLevel('Hello','Hello W');// Diff:=2;
Diff:=GetDiffStringLevel('Hello','World');// Diff:=6; or 5