提问人:Ahmed Hassan 提问时间:3/7/2023 更新时间:3/7/2023 访问量:52
如何使用模式进行 gsub
How to gsub using patterns
问:
我有一个列表 X,其元素名称如下
down_PK56c-t_S5_L001.clones_IGH
我想将元素重命名为这样
PK56c-t
如何使用 gsub 做到这一点? 我试过了这个,但没有用:/
gsub(".*[down_]([^.]+)[.].*", "\\1", "down_PK56c-t_S5_L001.clones_IGH")
多谢
答:
1赞
Wiktor Stribiżew
3/7/2023
#1
你需要一个喜欢这里sub
sub(".*down_([^_]+).*", "\\1", text)
请参阅正则表达式演示。
细节:
.*
- 任何零个或多个字符down_
- 文字字符串([^_]+)
- 第 1 组(指此组文本):下划线以外的一个或多个字符\1
.*
- 任何零个或多个字符
1赞
GuedesBF
3/7/2023
#2
我们还可以使用一个策略来回顾:extract
library(stringr)
string <- "down_PK56c-t_S5_L001.clones_IGH"
str_extract(string, pattern = "(?<=down_)[^_]+")
[1] "PK56c-t"
上一个:在 R 中用 df 制作矩阵
下一个:无法插入自定义徽标离子图标?
评论
gsub("down_([^_]+)_.*", "\\1", "down_PK56c-t_S5_L001.clones_IGH")