中是否有substring
forraw
向量的等价物R
?
假设我有一个大的二进制原始向量x
,例如使用readBin
. 现在我过去常常grepRaw
在我想访问的原始向量中找到一些片段的索引。一个玩具例子:
x <- charToRaw("foobar");
n <- 2;
m <- 5;
现在我想从位置 2 和 5 中提取“子字符串”。这样做的本机方法是:
x[n:m]
然而,这对于大片段的扩展性很差,因为 R 首先创建一个大向量n:m
,然后迭代该向量以从x
这些索引处一个一个地提取元素。是否有更原生的方法来提取raw
向量的一部分,类似于substr
字符向量?我认为我不能使用rawToChar
,因为这些文件可能包含非文本二进制数据。