我想使用 grepl() 函数来确定字符向量是否与模式匹配,并根据该模式连接向量中的字符。例如:
vec <- c("a","b","a","c","a","c","a","b")
grepl("[a]", vec)
TRUE FALSE TRUE FALSE TRUE FALSE TRUE FALSE
我希望在下一个 TRUE 之前将 TRUE 之后的所有值绑定(bind)在一起,这样其结果将是一个看起来像这样的向量:
"ab", "ac", "ac", "ab"
感谢任何想法。
最佳答案
如果您不喜欢 grepl()
:
VEC <- paste(vec, collapse="") # Collapse into single string ...
strsplit(VEC, "(?<=.)(?=a)", perl=TRUE)[[1]] # ... then split it before each 'a'
# [1] "ab" "ac" "ac" "ab"
关于r - 在 R 中使用 grepl() 匹配和连接字符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15642373/