我在x中搜索4个不同子串的位置,并尝试将这四个输出合并为一个累积字符串:
x <- ("AAABBADSJALKACCWIEUADD")
outputA <- gregexpr(pattern = "AAA", x)
outputB <- gregexpr(pattern = "ABB", x)
outputC <- gregexpr(pattern = "ACC", x)
outputD <- gregexpr(pattern = "ADD", x)
Run Code Online (Sandbox Code Playgroud)
我想合并这四个输出,并将此合并结果作为文本文件输出,每个元素在新行上分隔.
merged_output
# 1
# 3
# 13
# 20
Run Code Online (Sandbox Code Playgroud)
谢谢
实际上,您可以使用前瞻一次完成所有操作 (?=)
gregexpr("A(?=AA|BB|CC|DD)", x, perl=T)[[1]]
# [1] 1 3 13 20
# attr(,"match.length")
# [1] 1 1 1 1
# attr(,"useBytes")
# [1] TRUE
Run Code Online (Sandbox Code Playgroud)