Diff, Match and Patch; Compare

Diff, Match and Patch

Demo of Match

Matchは、より大きなテキストの中からパターンをファジーマッチで探します。
パターンにエラーが含まれていたり、テキストにあるものと正確に一致しなかったりしても、マッチを見つけることができます。
この実装では、マッチ位置の周辺を指定することもできます。
マッチ候補は、以下に基づいてスコア付けされ、マッチ距離パラメータは、これら2つのメトリクスの相対的な重要度を設定します。

  • a. パターンとテキスト間のスペルの違いの数
  • b. マッチ候補と期待される位置との距離
  • Text:

    Pattern:

    (maxlength in this browser: 32)
    テキスト内で検索する近似パターン。 Bitapアルゴリズムの制限により、パターンの長さには制限があります。

    Location:

    (text is currently 128 characters long)
    そのパターンは、本文のおよそどの辺りにあると思われますか?

    Distance:


    ファジィ位置(上記で指定)にどの程度近づけなければならないかを決定します。 ファジィ位置から `distance` 文字ぶん離れた文字が完全に一致した場合は、完全な不一致としてスコア付けされます。 距離'0'の場合、指定した位置に正確に一致する必要があり、 閾値'1000'の場合、0.8のしきい値を使用してファジー位置から800文字以内の完全一致を検出する必要があります。

    Match threshold:


    マッチアルゴリズムはどの時点であきらめるのか。 しきい値「0.0」は(文字と場所の両方が)完全に一致することを要求し、 しきい値「1.0」は何でも一致する。