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

编程入门 行业动态 更新时间:2024-10-11 05:20:22
本文介绍了查找两个字符变量之间的公共子字符串的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧! 问题描述

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

I have two character variables (names of objects) and I want to extract the largest common substring.

a <- c('blahABCfoo', 'blahDEFfoo') b <- c('XXABC-123', 'XXDEF-123')

我希望得到以下结果:

[1] "ABC" "DEF"

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

These vectors as input should give the same result:

a <- c('textABCxx', 'textDEFxx') b <- c('zzABCblah', 'zzDEFblah')

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

These examples are representative. The strings contain identifying elements, and the remainder of the text in each vector element is common, but unknown.

在以下位置之一(按优先顺序排列)是否存在解决方案:

Is there a solution, in one of the following places (in order of preference):

  • 基本R

  • Base R

    推荐软件包

    CRAN上可用的软件包

    Packages available on CRAN

    假定重复的答案不满足这些要求.

    The answer to the supposed-duplicate does not fulfill these requirements.

    推荐答案

    这是为此的CRAN软件包:

    Here's a CRAN package for that:

    library(qualV) sapply(seq_along(a), function(i) paste(LCS(strsplit(a[i], '')[[1]], strsplit(b[i], '')[[1]])$LCS, collapse = ""))
  • 更多推荐

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

    本文发布于:2023-11-28 21:57:43,感谢您对本站的认可!
    本文链接:https://www.elefans.com/category/jswz/34/1644086.html
    版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
    本文标签:字符串   变量   字符   两个

    发布评论

    评论列表 (有 0 条评论)
    草根站长

    >www.elefans.com

    编程频道|电子爱好者 - 技术资讯及电子产品介绍!