我有一个列表X,元素名如下down_PK56c-t_S5_L001.clones_IGH我想将这些元素重命名为如下形式PK56c-t我怎么能用gsub呢?我试过这个,没有用:/gsub(".*[down_]([^.]+)[.].*", "\\1", "down_PK56c-t_S5_L001.clones_IGH")非常感谢
down_PK56c-t_S5_L001.clones_IGH
PK56c-t
gsub(".*[down_]([^.]+)[.].*", "\\1", "down_PK56c-t_S5_L001.clones_IGH")
4xrmg8kj1#
我们还可以使用extract策略,并回顾一下:
extract
library(stringr) string <- "down_PK56c-t_S5_L001.clones_IGH" str_extract(string, pattern = "(?<=down_)[^_]+") [1] "PK56c-t"
zzoitvuj2#
这里需要一个sub
sub
sub(".*down_([^_]+).*", "\\1", text)
请参见regex demo。
.*
down_
([^_]+)
\1
2条答案
按热度按时间4xrmg8kj1#
我们还可以使用
extract
策略,并回顾一下:zzoitvuj2#
这里需要一个
sub
请参见regex demo。
.*
-尽可能零个或多个字符down_
-文字字符串([^_]+)
-第1组(\1
指该组文本):除下划线以外的一个或多个字符.*
-尽可能零个或多个字符