Определить общий шаблон [дубликат]

На этот вопрос уже есть ответ:

Найти общие подстроки между двумя символьными переменными 3 ответа

Есть ли (простая) возможность определить общий шаблон, который разделяют две строки? Вот небольшой пример, чтобы прояснить, что я имею в виду:

У меня есть две переменные, содержащие строку. Оба включают один и тот же шаблон («ABC»), а также некоторый «шум».

a <- "xxxxxxxxxxxABCxxxxxxxxxxxx"
b <- "yyyyyyyyyyyyyyyyyyyyyyyABC"

Пусть говорят, что я не знаю общий шаблон, и я хочу, чтобы R обнаружил, что обе строки содержат «ABC». Как я могу это сделать

*редактироват

Первый пример был немного упрощенным. Вот пример из моих реальных данных.

a <- "DUISBURG-HAMBORNS"
b <- "DUISBURG (-31.7.29)S"

Обе строки содержат «DUISBURG», который я хочу, чтобы функция идентифицировала.

*редактироват

Я принял решение, предложенное по ссылке, размещенной в комментариях. Но у меня все еще не совсем то, что я хочу.

library(qualV)
LCS(strsplit(a[1], '')[[1]],strsplit(b[1], '')[[1]])$LCS

[1] "D" "U" "I" "S" "B" "U" "R" "G" "-" " " " " "S"

Если функция ищет самую длинную общую подпоследовательность двух векторов, почему она не останавливается после"D" "U" "I" "S" "B" "U" "R" "G"? .

Ответы на вопрос(1)

Ваш ответ на вопрос