std/editdistance

  Source   Edit

This module implements an algorithm to compute the edit distance between two Unicode strings.

Procs

proc editDistance(a, b: string): int {.noSideEffect, ...raises: [], tags: [].}

Returns the unicode-rune edit distance between a and b.

This uses the Levenshtein distance algorithm with only a linear memory overhead.

Example:

static: doAssert editdistance("Kitten", "Bitten") == 1
  Source   Edit
proc editDistanceAscii(a, b: string): int {.noSideEffect, ...raises: [], tags: [].}

Returns the edit distance between a and b.

This uses the Levenshtein distance algorithm with only a linear memory overhead.

Example:

static: doAssert editDistanceAscii("Kitten", "Bitten") == 1
  Source   Edit