R 将特定文本粘贴到没有该文本的字符串

R 将特定文本粘贴到没有该文本的字符串,r,paste,R,Paste,我想将“miR”粘贴到没有“miR”的字符串上,并跳过那些已经有它的字符串 粘贴(“miR”、…) 在 出去 一种方法是使用sub删除字符串开头的“miR”,然后不加区分地将其粘贴到每个字符串 paste0("miR-", sub("^miR-","", x)) #[1] "miR-26b" "miR-26a" "miR-1297" "miR-4465" "miR-26b" "miR-26a" 数据 x <- c("miR-26b", "miR-26a", "1297", "4

我想将
“miR”
粘贴到没有
“miR”
的字符串上,并跳过那些已经有它的字符串

粘贴(“miR”、…)

出去


一种方法是使用
sub
删除字符串开头的“miR”,然后不加区分地将其粘贴到每个字符串

paste0("miR-", sub("^miR-","", x))

#[1] "miR-26b"  "miR-26a"  "miR-1297" "miR-4465" "miR-26b"  "miR-26a" 
数据

x <- c("miR-26b", "miR-26a", "1297", "4465", "miR-26b", "miR-26a")

x一种方法是使用
sub
删除字符串开头的“miR”,并将其粘贴到每个字符串

paste0("miR-", sub("^miR-","", x))

#[1] "miR-26b"  "miR-26a"  "miR-1297" "miR-4465" "miR-26b"  "miR-26a" 
数据

x <- c("miR-26b", "miR-26a", "1297", "4465", "miR-26b", "miR-26a")

x
vec
vec为了使您的答案更有价值,请您用文字简要解释一下sub()的作用以及它解决问题的原因?或许可以扩展一下为什么要使用perl=T参数。为了使您的答案更有价值,请您简单地用文字解释一下sub()的作用以及它解决问题的原因?也许可以扩展一下为什么使用参数perl=T。
vec <- c("miR-26b", "miR-26a", "1297", "4465", "miR-26b", "miR-26a")

sub("^(?!miR)(.*)$", "miR-\\1", vec, perl = T)

#[1] "miR-26b"  "miR-26a"  "miR-1297" "miR-4465" "miR-26b"  "miR-26a"