finds the longest contiguous subsequence of elements common to the strings or lists s1 and s2 and returns their positions {pos1,pos2} in s1 and s2.

Details and Options

  • For lists si, Take[si,posi] returns the longest common subsequence. For strings si, StringTake[si,posi] returns the longest common contiguous substring.
  • If there are several common subsequences of the same length, LongestCommonSubsequencePositions returns the position of the one that appears earliest in s1.
  • For strings, setting the option IgnoreCase->True makes LongestCommonSubsequencePositions treat lowercase and uppercase letters as equivalent, and returns the form of common subsequence that occurs in s1.


open allclose all

Basic Examples  (2)

Find the longest contiguous subsequence common to two strings:

Find the longest contiguous subsequence common to two lists:

Scope  (2)

Act on two strings:

Act on two lists of expressions:

Options  (1)

IgnoreCase  (1)

By default, LongestCommonSubsequencePositions distinguishes lower and upper case:

Ignore case:

Applications  (1)

Longest contiguous DNA subsequence of two genes:

Properties & Relations  (1)

Take two strings:

Find the positions of the longest common sequence of characters:

The corresponding strings coincide:

LongestCommonSubsequence returns those strings joined:

Introduced in 2015