org.specs2.text

EditDistance

Related Docs: object EditDistance | package text

trait EditDistance extends AnyRef

The EditDistance trait provides methods to compute and display the shortest distance between 2 strings.

Usage:

showDistance("kitten", "sitting") // returns ("(k)itt(e)n", "(s)itt(i)n(g)")

// with different separators
showDistance("kitten", "sitting", "[]") // returns ("[k]itt[e]n", "[s]itt[i]n[g]")

Linear Supertypes
AnyRef, Any
Known Subclasses
Ordering
  1. Alphabetic
  2. By inheritance
Inherited
  1. EditDistance
  2. AnyRef
  3. Any
  1. Hide All
  2. Show all
Learn more about member selection
Visibility
  1. Public
  2. All

Type Members

  1. type DistanceMatrix = Array[Array[Op]]

  2. class EditMatrix extends StringDistance with ShowDistance with DiffShortener

    Edit matrix for 2 given strings

  3. case class Op(opType: OpType, cost: Int = 0) extends Product with Serializable

  4. type OpType = String

  5. trait ShowDistance extends DiffShortener

    Given 2 strings and their edit distance matrix, show the operations allowing to go from one string to the other

  6. case class StringDelimiter(separator: String) extends Product with Serializable

    reconstruct strings by appending modified elements with separators

  7. trait StringDistance extends AnyRef

    Evaluate the distance between 2 strings by counting the number of insertions, suppressions or substitutions which are necessary to transform one into the other

Value Members

  1. final def !=(arg0: Any): Boolean

    Definition Classes
    AnyRef → Any
  2. final def ##(): Int

    Definition Classes
    AnyRef → Any
  3. final def ==(arg0: Any): Boolean

    Definition Classes
    AnyRef → Any
  4. lazy val DEL: String

  5. lazy val INS: String

  6. lazy val NONE: String

  7. lazy val SUBST: String

  8. final def asInstanceOf[T0]: T0

    Definition Classes
    Any
  9. def clone(): AnyRef

    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  10. def editDistance(s1: String, s2: String): Int

    returns

    the edit distance between 2 strings = the minimum number of insertions/suppressions/substitutions to pass from one string to the other

  11. final def eq(arg0: AnyRef): Boolean

    Definition Classes
    AnyRef
  12. def equals(arg0: Any): Boolean

    Definition Classes
    AnyRef → Any
  13. def finalize(): Unit

    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] )
  14. final def getClass(): Class[_]

    Definition Classes
    AnyRef → Any
  15. def hashCode(): Int

    Definition Classes
    AnyRef → Any
  16. final def isInstanceOf[T0]: Boolean

    Definition Classes
    Any
  17. final def ne(arg0: AnyRef): Boolean

    Definition Classes
    AnyRef
  18. final def notify(): Unit

    Definition Classes
    AnyRef
  19. final def notifyAll(): Unit

    Definition Classes
    AnyRef
  20. def showDistance(s1: String, s2: String, sep: String = "[]", shortenSize: Int = 20): (String, String)

    sep

    separators used to hightlight differences. If sep is empty, then no separator is used. If sep contains one character, it is taken as the unique separator. If sep contains 2 or more characters, the first half of the characters are taken as opening separator and the second half as closing separator.

    returns

    a (String, String) displaying the differences between each input strings. The used separators are specified by the caller. The string is shortened before and after differences if necessary.

  21. def showMatrix(s1: String, s2: String): Any

    show the edit matrix for 2 strings

  22. final def synchronized[T0](arg0: ⇒ T0): T0

    Definition Classes
    AnyRef
  23. def toString(): String

    Definition Classes
    AnyRef → Any
  24. final def wait(): Unit

    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  25. final def wait(arg0: Long, arg1: Int): Unit

    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  26. final def wait(arg0: Long): Unit

    Definition Classes
    AnyRef
    Annotations
    @throws( ... )

Inherited from AnyRef

Inherited from Any

Ungrouped