繁体   English   中英

如何使用 R 将向量中包含的字符替换为另一个字符

[英]How to replace characters contained in a vector with another single character using R

我有以下字符串:

x <- "KDDADQHRQDKWKDEHENRFKDEFVDEKKK"

我想要做的是将该字符串中的字符替换为? 如果它们包含在此向量中:

repo <- c("R", "H", "K", "D", "E")

结果是:

???A?QHRQ??W?????N?F???FV?????

我还想要negation版本, repo是用? .

导致KDD?D?HR?DK?KDEHE?R?KDE??DEKKK

我怎样才能用 R 实现这个目标?

我们可以使用带有正则表达式字符 class 的gsub()

x <- "KDDADQHRQDKWKDEHENRFKDEFVDEKKK"
repo <- c("R", "H", "K", "D", "E")
regex = paste0("[", paste(repo, collapse=""), "]")
output <- gsub(regex, "?", x)
output

[1] "???A?Q??Q??W?????N?F???FV?????"

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM