相关疑难解决方法(0)

查找两个字符变量之间的公共子串

我有两个字符变量(对象的名称),我想提取最大的公共子字符串.

a <- c('blahABCfoo', 'blahDEFfoo')
b <- c('XXABC-123', 'XXDEF-123')
Run Code Online (Sandbox Code Playgroud)

我想要以下结果:

[1] "ABC" "DEF"
Run Code Online (Sandbox Code Playgroud)

作为输入的这些向量应该给出相同的结果:

a <- c('textABCxx', 'textDEFxx')
b <- c('zzABCblah', 'zzDEFblah')
Run Code Online (Sandbox Code Playgroud)

这些例子具有代表性.字符串包含标识元素,每个向量元素中的其余文本是常见的,但未知.

是否有解决方案,在以下某个地方(按优先顺序):

  1. 基地R.

  2. 推荐套餐

  3. CRAN上提供的软件包

假设重复的答案不符合这些要求.

r lcs

12
推荐指数
2
解决办法
5859
查看次数

R - 最长的共同子串

有没有人知道R包解决了最长的常见子串问题?我正在寻找可以对矢量起作用的快速的东西.

string substring r longest-substring

8
推荐指数
1
解决办法
4160
查看次数

查找字符串中重叠的长度

您知道有什么现成的方法可以获取两个字符串的长度和重叠吗?然而只有与R,也许有什么来自stringr?我正在寻找这里,不幸的是没有成功。

str1 <- 'ABCDE'
str2 <- 'CDEFG'

str_overlap(str1, str2)
'CDE'

str_overlap_len(str1, str2)
3
Run Code Online (Sandbox Code Playgroud)

其他例子:

str1 <- 'ATTAGACCTG'
str2 <- 'CCTGCCGGAA'

str_overlap(str1, str2)
'CCTG'

str_overlap_len(str1, str2)
4
Run Code Online (Sandbox Code Playgroud)

///

str1 <- 'foobarandfoo'
str2 <- 'barand'

str_overlap(str1, str2)
'barand'

str_overlap_len(str1, str2)
6
Run Code Online (Sandbox Code Playgroud)

/// 是的,两个解决方案,总是选择总是重叠

str1 <- 'EFGABCDE'
str2 <- 'ABCDECDE'

str_overlap(str1, str2)
'ABCDE'

str_overlap_len(str1, str2)
5
Run Code Online (Sandbox Code Playgroud)

我想知道是否有自制的小功能,比如这个

string r bioinformatics overlap dna-sequence

5
推荐指数
1
解决办法
3073
查看次数