在第一次出现连字符或下划线之前,我正在尝试删除字符串中的特定单词。
下面是我将收到的输入字符串示例
Sec_GHTY_WE
NewSec_JOL_ru
Sec-KIH-YRK
Sec_PWq-FTF
NewSec-LPO-WE从上面的字符串中,我想从字符串中删除'Sec‘或'NewSec’,并将前缀/替换为其他单词,比如'MYD‘。或者,在第一次出现连字符或下划线后,我只能提取剩余的字符串。预期产出如下
MYD_GHTY_WE (OR) GHTY_WE
MYD_JOL_ru JOL_ru
MYD-KIH-YRK KIH-YRK
MYD_PWq-FTF PWq-FTF
MYD-LPO-WE LPO-WE我已经尝试了下面的代码,但它并没有给我期望的输出粘贴方法。但是我必须用粘贴来给出最终的输出。
a <- Sec_GHTY_WE
paste0((a %>% gsub('\\bSec', "text1", ., ignore.case = TRUE) %>% gsub('\\bNewSec', "text2", ., ignore.case = TRUE)), "_", 1)我需要R基地的解决方案。
发布于 2020-11-16 09:22:49
如果您的数据文件是df,那么列名为V1。
替换第一个下划线或连字符之前的文本:
df$V2 <- sub('.*?[-_]', 'MYD_', df$V1)
df
# V1 V2
#1 Sec_GHTY_WE MYD_GHTY_WE
#2 NewSec_JOL_ru MYD_JOL_ru
#3 Sec-KIH-YRK MYD_KIH-YRK
#4 Sec_PWq-FTF MYD_PWq-FTF
#5 NewSec-LPO-WE MYD_LPO-WE替换'Sec'或'NewSec'。
df$V2 <- sub('Sec|NewSec', 'MYD', df$V1)发布于 2020-11-16 19:54:45
我们可以使用来自str_replace的stringr
library(stringr)
df$V2 <- str_replace(df$V1, 'Sec|NewSec', 'MYD')https://stackoverflow.com/questions/64855303
复制相似问题