R 如何根据匹配的前缀/后缀合并两个字符串?

R 如何根据匹配的前缀/后缀合并两个字符串?,r,string,R,String,我正在尝试根据匹配的后缀/前缀合并两个字符串。例如,给定下面的两个字符串“a”和“b”,我首先使用Biostrings::pairwiseallignment获取它们的公共后缀/前缀,在本例中是“cutie”。然后我需要合并这两个字符串。连接不会有帮助,因为我会得到重复 这就是我目前所拥有的一切: a= "bahahahallocutie" b = "cutiepalaohaha" pairwiseAlignment(a, b, type = "overlap") 这给了我: Overlap

我正在尝试根据匹配的后缀/前缀合并两个字符串。例如,给定下面的两个字符串“a”和“b”,我首先使用
Biostrings::pairwiseallignment
获取它们的公共后缀/前缀,在本例中是“cutie”。然后我需要合并这两个字符串。连接不会有帮助,因为我会得到重复

这就是我目前所拥有的一切:

a= "bahahahallocutie"
b = "cutiepalaohaha"
pairwiseAlignment(a, b, type = "overlap")
这给了我:

Overlap PairwiseAlignmentsSingleSubject (1 of 1)
pattern: [12] cutie
subject:  [1] cutie
score: 17.20587 
我想得到的是通过一个后缀和另一个前缀的模式合并两个字符串:

 "bahahahallocutiepalaohaha"

您可以从
成对对齐的结果中提取模式。然后使用
gsub
从字符串中删除模式,您可以使用
paste0
获得所需的合并字符串。请注意,在最终代码中,您需要考虑原始字符串的顺序

library(Biostrings)
pat <- pairwiseAlignment(a, b, type = "overlap")@pattern
paste0(gsub(pat, "", a), pat, gsub(pat, "", b))
# [1] "bahahahallocutiepalaohaha"
库(生物串)

pat请不要假设每个人都知道哪个包
pairwiseAlignment
。您应该在示例中包括对
库的调用。