这是一个字符串:
str1="ha,hihi,aaaaa,ok"
Run Code Online (Sandbox Code Playgroud)
我想要得到的位置","
中str1
,这可以算3,8,14
.
我怎么能在R中得到它?
使用此表达式可以获得所需的向量:
as.integer(gregexpr(",", str1)[[1]])
Run Code Online (Sandbox Code Playgroud)
在[[1]]
将选择结果列表中的第一个元素.如果str1
是一个长度不是1的向量,那么gregexpr
将产生一个包含许多项的列表,每个元素对应一个str1
.
在as.integer
将剥离额外的属性,如匹配的文本的长度.在许多情况下,您将能够省略这一点,因为其他代码可能会忽略这些属性.但是为了输出到控制台,它可能不那么令人困惑,所以我把它包含在我的答案中.